Java中打印图案最常用的25个图案程序

Java是公认的最流行的编程语言,因为它的简单性和多功能性。还可以使用它开发各种应用程序,包括Web、移动和桌面应用程序。此外,Java为开发人员提供了强大的工具来轻松高效地创建复杂的程序。Java最有前途的特性之一是它能够创建可以以特定格式打印数字的图案程序。模式程序是学习Java编程的一种很好的方法,特别是对于初学者,因为它有助于理解Java编程的语法和逻辑。

Java模式程序一直是Java面试问题的关键部分之一。它们看起来几乎不可能在某一点上被破解,但这些问题实际上是基于数理逻辑和矩阵的基本原理。因此,Java模式程序非常受欢迎。

这篇Java模式程序文章涵盖了几乎所有可能的模式程序类型,这些程序将使您更好地理解解码模式的逻辑,并能够在面试中构建模式。

如何在Java中打印图案?

在Java中打印模式是编程中的常见任务,尤其是在学习的早期阶段。图案是通过以特定的方式排列符号或数字来形成设计或形状来打印的。这些模式经常用于解决问题,在发展算法思维技能方面也很有用。本文将讨论如何在Java中打印模式,并探索一些最常见的模式。

在Java中打印模式的循环和控制语句是最好的。循环帮助您重复代码块,直到满足特定条件,并且控制语句允许您根据特定条件更改程序流。下面讨论Java中的不同模式:

我们将通过以下摘要处理不同类型的Java模式程序。

Java中的模式程序

星形图案

星形图案是Java中流行的图案程序,通常用于创建有趣的视觉设计或图形。这些程序使用马赛克或其他符号来创建各种形状和图案。星形图案通常用于计算机图形,标志设计和其他视觉显示。

在Java中创建星形图案涉及到使用嵌套循环来控制行数和列数以及星号或其他符号的位置。该程序可以定制以创建图案,包括三角形、正方形、圆形和更复杂的设计。此外,它还可以定制以创建各种图案,如下所述:

Pattern 1

/*Star Pattern 1
* 
* * 
* * * 
* * * * 
* * * * *   */package tech.besthub;
public class Star {
public static void main(String[] args) {
int rows = 5;
for (int i = 1; i <= rows; ++i) {  //Outer loop for rows
for (int j = 1; j <= i; ++j) { //Inner loop for Col
System.out.print("* "); //Print *
}
System.out.println(); //New line
}
}
}
Pattern 2

/*Star Pattern 2
* * * * * 
* * * * 
* * * 
* * 
*   */package tech.besthub;
public class Star {public static void main(String[] args) {int rows = 5;for(int i = rows; i >= 1; --i) {  //For Loop for Row for(int j = 1; j <= i; ++j) { //For Loop for ColSystem.out.print("* "); //Prints *}System.out.println(); //Get to newline}}
}
Pattern 3

/*Star Pattern 3
* 
* * 
* * * 
* * * * 
* * * * * 
* * * * 
* * * 
* * 
*   */
package tech.besthub;
import java.util.Scanner;
public class Star {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); //Input
System.out.println("Enter the number of rows: ");
int rows = sc.nextInt();
for (int i = 0; i <= rows - 1; i++) { //For Loop for Row 
for (int j = 0; j <= i; j++) { //For Loop for Col
System.out.print("*" + " "); //prints * and blank space
}
System.out.println(""); // new line
}
for (int i = rows - 1; i >= 0; i--) { //For Loop for Row
for (int j = 0; j <= i - 1; j++) { //For Loop for Col
System.out.print("*" + " "); //prints * and blank space
}
System.out.println("");// new line
}
sc.close();
}
}
Pattern 4

/*Star Pattern 4* * * * * * * * * * * * * * *   */
package tech.besthub;
public class Star {
public static void printStars(int n) {
int i, j;
for (i = 0; i < n; i++) {  
for (j = 2 * (n - i); j >= 0; j--) { //For Loop for Row
System.out.print(" "); // Print Spaces
}for (j = 0; j <= i; j++) { //For Loop for col
System.out.print("* "); // Print Star
}
System.out.println();
}
}public static void main(String args[]) {
int n = 5; //Number of Rows
printStars(n);
}
}
Pattern 5

/*Star Pattern 5
* * * * ** * * ** * ** **  */
package tech.besthub;
import java.util.Scanner;
public class Star {
public static void main(String[] args) {
Scanner S = new Scanner(System.in); //Input
System.out.println("Enter row value ");
int r = S.nextInt();
for (int i = r; i >= 1; i--) { 
for (int j = r; j > i; j--) { 
System.out.print(" "); // Prints Blank space
}
for (int k = 1; k <= i; k++) {
System.out.print("*"); //Prints *
}
System.out.println(" "); //Prints blank spaces
}
S.close();
}
}
Pattern 6

/*Star Pattern 6**********
***************   */
package tech.besthub;
import java.util.Scanner;
public class Star {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Enter the number of rows: ");
int rows = sc.nextInt();
for (int i = 1; i <= rows; i++) {
for (int j = i; j < rows; j++) { //Rows Loop
System.out.print(" "); // Blank Space
}
for (int k = 1; k <= i; k++) { //Cols Loop
System.out.print("*"); // Prints *
}
System.out.println("");
}
for (int i = rows; i >= 1; i--) {
for (int j = i; j <= rows; j++) { //Rows Loop
System.out.print(" ");  // Prints blank spaces
}for (int k = 1; k < i; k++) { //Col Loop
System.out.print("*");  // Prints *
}
System.out.println(""); // New Line1
}
sc.close();
}
}
Pattern 7

/*Star Pattern 7* * * * * * * * * * 
* * * * *    */
package tech.besthub;
public class Star {
public static void printTriagle(int n) {
for (int i = 0; i < n; i++) {
for (int j = n - i; j > 1; j--) { //Loop for blank space
System.out.print(" "); //Print Space
}for (int j = 0; j <= i; j++) { loop for star
System.out.print("* "); //Print Star
}
System.out.println(); //Newline
}
}public static void main(String args[]) {
int n = 5;
printTriagle(n);
}
}
Pattern 8

/*Star Pattern 8* * * * * * * * * * * * * * *  */package tech.besthub;
import java.util.Scanner;
public class Star {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Enter the number of rows: ");
int rows = sc.nextInt();
for (int i = 0; i <= rows - 1; i++) { //For loop for Rows
for (int j = 0; j <= i; j++) { //For loop for Col
System.out.print(" "); // blank space
}for (int k = 0; k <= rows - 1 - i; k++) { 
System.out.print("*" + " "); // prints * and blank space
}
System.out.println(); //Next line
}
sc.close();
}
}
Pattern 9

/*Star Pattern 9****************
*************************     */package tech.besthub;
import java.util.Scanner;
public class Star {
public static void main(String args[]) {
int n, x, j, blank = 1;
System.out.print("Enter the value for rows: ");
Scanner s = new Scanner(System.in);
n = s.nextInt(); //input
blank = n - 1; // logic for balck spaces 
//Upper star Pyramid
for (j = 1; j <= n; j++) {
for (x = 1; x <= blank; x++) {
System.out.print(" "); //print blank space
}
blank--;
for (x = 1; x <= 2 * j - 1; x++) {
System.out.print("*"); //Print Star
}
System.out.println("");
}
//Lower star Pyramid
blank = 1;
for (j = 1; j <= n - 1; j++) {
for (x = 1; x <= blank; x++) {
System.out.print(" "); //Print Spaces
}
blank++;
for (x = 1; x <= 2 * (n - j) - 1; x++) {
System.out.print("*"); //Print Star
}
System.out.println(""); //Print new line
}
}
}
Pattern 10

/*Star Pattern 10
* * * * * * * * * * * * * * * * * * * * * * * * * 
* * * * *   */package tech.besthub;
import java.util.Scanner;
public class Star {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Enter the number of rows: ");
int rows = sc.nextInt(); //Input
//Upper Inverted Pyramid
for (int i = 0; i <= rows - 1; i++) {
for (int j = 0; j < i; j++) {
System.out.print(" "); Print blank space
}
for (int k = i; k <= rows - 1; k++) {
System.out.print("*" + " "); //Print star and blank space
}
System.out.println(""); //New line
}
//For lower Pyramid
for (int i = rows - 1; i >= 0; i--) {
for (int j = 0; j < i; j++) {
System.out.print(" "); //Print spaces
}
for (int k = i; k <= rows - 1; k++) {
System.out.print("*" + " "); //Print Star and Space
}
System.out.println(""); //Print New line
}
sc.close();
}
}
Pattern 11

/*Diagonal 11****
*             */package tech.besthub;
public class Star {
public static void main(String[] args) {
int i, j;
for (i = 1; i <= 5; i++) {
for (j = 0; j < 5 - i; j++) {
System.out.print("  "); //Print blank space
}
System.out.print("*"); //Print Star and newline
}
}
}

X图案

它创建了X个字符的对角线模式。可以使用嵌套循环创建该模式,该循环根据行号和列号在特定位置打印X个字符。

Pattern 12

/*X Pattern 12
*     **   ** *** **   *
*     *  */
package tech.besthub;
import java.util.*;
public class Star {
public static void main(String args[]) {
int i, j, n;
Scanner sc = new Scanner(System.in);
System.out.println("Enter a value for n");
n = sc.nextInt(); //Input
//Upper V pattern
for (i = n; i >= 1; i--) {
for (j = i; j < n; j++) {
System.out.print(" ");//print spaces
}for (j = 1; j <= (2 * i - 1); j++) {
if (j == 1 || j == (2 * i - 1))//Logic for printing star
System.out.print("*");
else
System.out.print(" ");//if logic fails print space
}
System.out.println("");
}//Lower Inverted V pattern
for (i = 2; i <= n; i++) {
for (j = i; j < n; j++) {
System.out.print(" ");//Print spaces
}for (j = 1; j <= (2 * i - 1); j++) {
if (j == 1 || j == (2 * i - 1))//Logic for printing star
System.out.print("*");
else
System.out.print(" ");//if logic fails print space
}
System.out.println("");
}
}
}
Pattern 13

/*Inverted V 13*     * *    *   *   *     *  
*       *   */
package tech.besthub;
import java.util.Scanner;
public class Star {
public static void main(String[] args) {
Scanner cs = new Scanner(System.in); //Input
System.out.println("Enter the row size:");
int out, in;
int row_size = cs.nextInt();
int print_control_x = row_size;
int print_control_y = row_size;
for (out = 1; out <= row_size; out++) {
for (in = 1; in <= row_size * 2; in++) {
if (in == print_control_x || in == print_control_y) {
System.out.print("*");
} else {
System.out.print(" ");
}
}
print_control_x--;
print_control_y++;
System.out.println();
}
cs.close();
}
}
Pattern 14

/* V-pattern
*       **     **   ** **     */package tech.besthub;
public class Star {
static void pattern(int n) {
int i, j;
for (i = n - 1; i >= 0; i--) {
for (j = n - 1; j > i; j--) {
System.out.print(" "); //Print Space
}
System.out.print("*"); //Print star
for (j = 1; j < (i * 2); j++)
System.out.print(" ");//Print space
if (i >= 1)
System.out.print("*");
System.out.print("");//Enter newline
}
}public static void main(String args[]) {
int n = 5;
pattern(n); //Pattern method call
}
}
Pattern 15

/*Rombus 15** **   **     *
*       **     **   ** **     */
package tech.besthub;
import java.util.Scanner;
public class Star {
public static void main(String[] args) {
System.out.println("Number of rows: ");
int rows = extracted().nextInt();
int i;
//upper inverted V pattern
for (i = 1; i <= rows; i++) {
for (int j = rows; j > i; j--) {
System.out.print(" "); //Print spaces
}
System.out.print("*"); //Print Spaces
for (int k = 1; k < 2 * (i - 1); k++) { /Logic for pattern
System.out.print(" "); //Print Spaces
}
if (i == 1) {
System.out.println(""); //Condition true, go to newline
} else {
System.out.println("*"); //else print star
}
}//Lower v pattern
for (i = rows - 1; i >= 1; i--) {
for (int j = rows; j > i; j--) {
System.out.print(" "); //Print Spaces
}
System.out.print("*");
for (int k = 1; k < 2 * (i - 1); k++) { Logic for pattern
System.out.print(" ");
}if (i == 1)
System.out.println(""); //newline
else
System.out.println("*"); //Print star
}
}private static Scanner extracted() {
return new Scanner(System.in);
}
}
Pattern 16

/*Star Pattern 16** **   **     *
*********   */
package tech.besthub;
import java.util.Scanner;
public class Star {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Enter the number of rows: ");
int rows = sc.nextInt();
for (int i = 1; i <= rows; i++) {
for (int j = i; j < rows; j++) {
System.out.print(" ");
}
for (int k = 1; k <= (2 * i - 1); k++) {
if (k == 1 || i == rows || k == (2 * i - 1)) {
//Logic for printing Pattern
System.out.print("*"); //Print Star
} else {
System.out.print(" ");  //Print Spaces
}
}
System.out.println("");
}
sc.close();
}
}
Pattern 17

/*Star Pattern 17
**********     **   ** **      */
package tech.besthub;
import java.util.Scanner;
public class Star {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Enter the number of rows: ");
int rows = sc.nextInt(); //Row input
for (int i = rows; i >= 1; i--) {
for (int j = i; j < rows; j++) {
System.out.print(" "); //Print Spaces
}
for (int k = 1; k <= (2 * i - 1); k++) {
if (k == 1 || i == rows || k == (2 * i - 1)) { //logic to print Pattern
System.out.print("*"); //Ture prints star
} else {
System.out.print(" "); //False prints spaces
}
}
System.out.println("");
}
sc.close();
}
}
Pattern 18

/*Box 18
**********
*        *
*        *
*        *
*        *
*        *
*        *
*        *
*        *
**********  */
package tech.besthub;
public class Star {
static void print_rectangle(int n, int m) {
int i, j;
for (i = 1; i <= n; i++) {
for (j = 1; j <= m; j++) {
if (i == 1 || i == n || j == 1 || j == m) //Logic to print 
System.out.print("*"); //Tue?, print star
else
System.out.print(" "); //Tue?, print space
}
System.out.println();
}
}
public static void main(String args[]) {
int rows = 10, columns = 10;
print_rectangle(rows, columns); //Method call
}
}
Pattern 19

/*
1 
1 2 
1 2 3 
1 2 3 4 
1 2 3 4 5 */ 
package tech.besthub;
import java.util.Scanner;
public class Star {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); //Input
System.out.println("Number of rows: ");
int rows = sc.nextInt(); 
for (int i = 1; i <= rows; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(j + " "); //Print j value and space
}
System.out.println();
}
sc.close();
}
}

弗洛伊德三角图案

这种模式是通过打印一个数字三角形来创建的,从1开始,每行的值递增1。但是,数字是按特定顺序打印的,如下例所示:

Pattern 20

/*Number Pattern 20 (Floyd's Triangle)
1 
2 3 
4 5 6 
7 8 9 10 
11 12 13 14 15  */
package tech.besthub;
public class Star {
public static void main(String[] args) {
int i, j, k = 1;
for (i = 1; i <= 5; i++) {
for (j = 1; j < i + 1; j++) {
System.out.print(k++ + " "); /Floyd’s triangle logic(prints K value and increments on every iteration)
}
System.out.println();
}
}
}

帕斯卡三角

它涉及到创建遵循特定数学规则的数字的三角形模式。可以使用嵌套循环创建该模式,该循环根据每个数字在三角形中的位置计算每个数字的值。

Pattern 21

/*Number Pattern 21 (Pascal's Triangle)11   11   2   11   3   3   11   4   6   4   11   5  10  10   5   1 */
package tech.besthub;
public class Star {
public static void main(String[] args) {
int x = 6;
for (int i = 0; i < x; i++) {
int num = 1;
System.out.printf("%" + (x - i) * 2 + "s", ""); //Pascals triangle logic
for (int j = 0; j <= i; j++) {
System.out.printf("%4d", num);
num = num * (i - j) / (j + 1);
}
System.out.println();
}
}
}

数字图案

它是另一种类型的Java模式程序,涉及以特定的顺序或排列打印数字。这些程序可用于创建表格、图形和其他类型的可视显示。

在Java中,创建数字模式涉及使用循环来控制行数和列数以及打印的数字值。该程序可以定制以创建模式,包括乘法表,斐波那契序列和更复杂的设计。

Pattern 22

/*Number Pattern 22
10101
01010
10101
01010
10101  */
package tech.besthub;
import java.util.Scanner;
public class Star {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Number of rows: ");
int rows = sc.nextInt(); //Input
for (int i = 1; i <= rows; i++) {
int num;
if (i % 2 == 0) {
num = 0;
for (int j = 1; j <= rows; j++) {
System.out.print(num);
num = (num == 0) ? 1 : 0;
}
} else {
num = 1;
for (int j = 1; j <= rows; j++) {
System.out.print(num);
num = (num == 0) ? 1 : 0;
}
}
System.out.println();
}
sc.close();
}
}
Pattern 23

/*Ruby Pattern 23AB BC   C
D     DC   CB BA     */
package tech.besthub;
import java.util.Scanner;
public class Ruby {
public static void main(String[] args) {
char[] alpha = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S',
'T', 'U', 'V', 'W', 'X', 'Y', 'Z' };
int digit = 0;
String[] ruby = new String[26];
System.out.print("Input Uppercase alphabet between A to Z:");
Scanner reader = new Scanner(System.in);
try {
char aplhabet = reader.next("[A-Z]").charAt(0);
for (int i = 0; i < alpha.length; i++) {
if (alpha[i] == aplhabet) {
digit = i;
break;
}
}
for (int i = 0; i <= digit; i++) {
ruby[i] = "";
for (int p = 0; p < digit - i; p++) {
ruby[i] += " ";
}
ruby[i] += alpha[i];
if (alpha[i] != 'A') {
for (int p = 0; p < 2 * i - 1; p++) {
ruby[i] += " ";
}
ruby[i] += alpha[i];
}
System.out.println(ruby[i]);
}
for (int i = digit - 1; i >= 0; i--) {
System.out.println(ruby[i]);
}
} catch (Exception e) { //Exception
e.printStackTrace();
} finally {
reader.close();
}
}
}
Pattern 24

/*Alphabet Pattern 24
A 
A B 
A B C 
A B C D 
A B C D E 
A B C D E F   */
package tech.besthub;
public class Alphabet {
public static void main(String[] args) {
int alphabet = 65; //ASCII value of “A”
for (int i = 0; i <= 5; i++) {
for (int j = 0; j <= i; j++) {
System.out.print((char) (alphabet + j) + " "); //Logic to print Alphabet pattern
}
System.out.println();
}
}
}
Pattern 25

/*Alphabet Pattern 25A A B A B C A B C D 
A B C D E  */
package tech.besthub;
public class Alphabet {
public static void main(String[] args) {
for (int i = 0; i <= 4; i++) {
int alphabet = 65; //ASCII value of “A”
for (int j = 4; j > i; j--) {
System.out.print(" "); //Print Space
}
for (int k = 0; k <= i; k++) {
System.out.print((char) (alphabet + k) + " "); //Print Alphabet
}
System.out.println();
}
}
}

技术交流

一个人走的很快,一群人走的更远。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/416407.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[已解决]前端使用el-upload,后端使用文件上传阿里云报错:异常信息:java.lang.NullPointerException: null

前端使用el-upload&#xff0c;后端使用文件上传阿里云报错&#xff1a; 报错原因&#xff1a;前端image参数未传进去 解决方法&#xff1a;在el-upload添加属性 name"image" 文件传进去了&#xff01;

杜卡迪Panigale v4 SP2、Street Fighter v4 SP正式发布,购车送GP观赛

最新款杜卡迪的Panigale v4 SP2、Street Fighter v4 SP国内正式上市&#xff0c;售价分别是382500元和310500元&#xff0c;Panigale售价比老款降低了2.55万元&#xff0c;而街霸的SP版则是国内首次上市。 SP版一直都是杜卡迪的限量款&#xff0c;标榜着高性能、高配置&#xf…

三、RHCE--时间服务器

三、RHCE--时间服务器 一、简介二、软件安装三、配置时间服务器客户端四、配置时间服务器服务端五、示例&#xff1a; 一、简介 NTP 是网络时间协议&#xff08;Network Time Protocol&#xff09;的简称&#xff0c;通过 udp 123 端口进行网络时钟同步。 Chrony是一个开源自由…

C语言——程序的版式

前言 版式虽然不会影响程序的功能&#xff0c;但会影响可读性。程序的版式追求清晰、美观&#xff0c;是程序风格的重要构成因素。可以把程序的版式比喻为“书法”。好的“书法”可让人对程序一目了然&#xff0c;看得兴致勃勃。差的程序“书法”如螃蟹爬行&#xff0c;让人看得…

JOSEF约瑟 时间继电器DS-112 220VDC 0.2~3.5S 柜内固定安装,板前接线

系列型号&#xff1a; DS-111时间继电器&#xff1b;DS-112时间继电器&#xff1b; DS-113时间继电器&#xff1b;DS-111C时间继电器&#xff1b; DS-112C时间继电器&#xff1b;DS-113C时间继电器&#xff1b; DS-114时间继电器&#xff1b;DS-115时间继电器&#xff1b; DS-1…

postgresql安装

一、官方找到对应的版本,下载 官方下载地址(rpm方式安装):PostgreSQL: Linux downloads (Red Hat family) PostgreSQL: The worlds most advanced open source database 滑到最下面

深度学习记录--mini-batch gradient descent

batch vs mini-batch gradient descent batch&#xff1a;段&#xff0c;块 与传统的batch梯度下降不同&#xff0c;mini-batch gradient descent将数据分成多个子集&#xff0c;分别进行处理&#xff0c;在数据量非常巨大的情况下&#xff0c;这样处理可以及时进行梯度下降&…

爬虫之牛刀小试(八):爬取微博评论

今天爬取的是微博评论。 可以发现其特点是下一页评论的max_id在上一页中。 于是代码如下&#xff1a; import requests import json import re import time headers {User-Agent: ,"Cookie": "","Referer": "https://m.weibo.cn/detail/4…

iphone5s基带部分电源部分主主电源供电及

时序: 1.,基带电源的供电&#xff0c;基带电源也叫pmu。 首先时序图说电池提供供电&#xff0c;电池是J6接口&#xff0c;视频习惯把接口称之为座子。查U2_RF芯片&#xff0c;发现供电信号为PP_BATT_VCC_CONN&#xff0c;但是没查到跟电池座子有关系&#xff0c;电池座子写的是…

TCP 的三次握手和四次挥手

Java 面试题 TCP 三次握手 第一次握手&#xff1a;客户端向服务端发送SYN包。报文中标志位SYN1&#xff0c;序列号seqx&#xff08;x为随机整数&#xff09;。此时客户端进入了 SYN_SEND 同步已发送状态。 第二次握手&#xff1a;服务端回复客户端SYNACK包。报文中标志位SYN1&…

洛谷P5731 【深基5.习6】蛇形方阵(C语言)

思路感觉还是比较好想的。 从 1 到 n 依次算。先往右&#xff0c;走到头往下&#xff0c;再走到头往左&#xff0c;以此类推。 #include<stdio.h>int main() {int n, i, j, k1,t0;scanf("%d", &n);int a[100][100];if (n % 2 0)t n / 2;elset n / 2 …

网络安全需要对网络风险有独特的理解

迷失在翻译中&#xff1a;网络风险解释的脱节现实 在古印度的一个经典故事中&#xff0c;几个蒙住眼睛的人接近一头大象&#xff0c;每个人检查不同的部位。有人触摸树干&#xff0c;认为它像一条蛇。另一个摸到了一条腿&#xff0c;认为它是一棵树。还有一个拿着象牙的人&…