第三章 Java的基本程序设计结构
第三章 Java的基本程序设计结构
3.3
Java是-种强类型语言。这就意味着必须为每一个变量声明一种类型:在Java中,-共有8种基本类型(primitivetype),其中有4种整型、2种浮点类型、1种用于表示Unicode编码的字符单元的字符类型char(请参见论述char类型的章节)和1种用于表示真值的boolean类型。
3.3.1 整型(4种)
整型用于表示没有小数部分的数值,它允许是负数。Java提供了4种整型 int(4字节) short(2字节) long(8字节) byte(1字节)
在Java中,所有的数值类型所占据的字节数量与平台无关
3.3.2 浮点型(2种)
浮点类型用于表示有小数部分的数值
float(4字节) double(8字节)
float类型的数值有一个后缀F或f(例如,3.14F)。没有后缀F的浮点数值(如3.14)默认为double类型
3.3.3 char类型(1种)
char类型原本用于表示单个字符。不过,现在情况已经有所变化。如今,有些Unicode字符可以用一个chai•值描述,另外一些Unicode字符则需要两个char值。
char类型的字面量值要用单引号括起来。
在Java中,char类型描述了UTF-16编码中的一个代码单兀。
3.3.5 boolean类型(1种)
boolean(布尔)类型有两个值:false和true,用来判定逻辑条件整型值和布尔值之间不能进行相互转换。
3.4 变量
变量名必须是一个以字母开头并由字母或数字构成的序列,字母包括’A’’Z’、’a1’z1、或在某种语言中表示字母的任何Unicode字符。
不能使用Java保留字作为变量名(请参看附录A中的保留字列表)
提示:如果想要知道哪些Unicode字符属于Java中的“字母”,可以使用Character类的isJavaldentifierStart和isJavaldentifierPart方法来检查。
3.4.1变量初始化
声明一个变量之后,必须用赋值语句对变量进行显式初始化,千万不要使用未初始化的变量
final double pi = 3.1415;
在Java中,经常希望某个常量可以在一个类中的多个方法中使用,通常将这些常量称为类常量
public static final double pi = 3.1415;
3.5 运算符
//数值类型之间的转换
double > float > long > int
//强制类型转换
int nx=(int)Math.round(x);
// += 操作
x += 4;
//自增和自减
n++ 与 ++n
//关系运算符
&& || !
//位运算符
& | ^ ~
//三元运算符
x<y?x:y
运算优先级
3.6 字符串
Java没有内置的字符串类型,而是在标准Java类库中提供了一个预定义类,很自然地叫做String
3.6.1 子串
String word = "Hello";
String s = word.substring(0,3);//左闭右开
System.out.println(s);
3.6.2 拼接
String word_1 = "I Love ";
String word_2 = "you";
System.out.println(word_1 + word_2);
//当将一个字符串与一个非字符串的值进行拼接时,后者被转换成字符串
int age = 13;
System.out.println("He is " + age);
//如果需要把多个字符串放在一起,用一个定界符分隔,可以使用静态join方法
String s = String.join(" ","I","Love","You");
System.out.println(s);
3.6.3 构建字符串
有些时候,需要由较短的字符串构建字符串,每次连接字符串,都会构建一个新的String对象,既耗时,又浪费空间。使用StringBuilder类就可以避免这个问题的发生。
StringBuilder builder = new StringBuilder();
builder.append("ch");
builder.append("sm");
//在需要构建字符串时就凋用toString方法,将可以得到一个String对象,其中包含了构建器中的字符序列。
String s = builder.toString();
System.out.println(s);
3.7 输入输出
3.7.1 输入
Scanner in = new Scanner(System.in);
System.out.println("Whatisyourname?");
String name = in.nextLine();
System.out.println(name);
System.out.println("age?");
int age = in.nextInt();
System.out.println(age);
3.7.2 输出
posted on 2023-01-01 21:23 wangwei1024 阅读(12) 评论(0) 编辑 收藏 举报