java 入门 三

一Switch 小例子

二字符串

1 java的字符串就是Unicode字符序列, 一个字符, 仅仅代表一个代码点(codePoint),

但却有可能代表多个代码单元

2String类中的 substring  方法可以有一个较大的字符串取出一个子串

3java 运行用+号可以拼接字符串 

4String.join 方法例子:

此时all=”abc---def---ghi”;

5 不能修改Java字符串中的字符,所以在Java文档中将String 类对象称为不可变字符串,如同 数字3 永远是数字3 字符串“Hello” 永远包含字符 H e l l o 的代码单元序列 。而不能修改其中的任何一个字符。 

6 不可变字符串的一个优点 :编译器可以让字符串共享 。Java的设计者认为共享带来的高效率远胜于提取、拼接字符串带来的低效率。 ( 可以想象一下将各种字符串存放到公共的存储池中,字符串变量指向存储池中相应的位置。 如果复制一个字符串变量,原始字符串与复制字符串共享相同的字符)。

7 使用 equals 方法检测两个字符串是否相等。 表达式 s.equals(t) 

检测两个字符串是否相等,并且不区分大小写 可以使用 equalslgnoreCase 方法

8 千万不要使用== 运算符检测两个字符串是否相等 。这个运算符只能确定两个字符串是否放置在同一个位置上。当然,如果字符串放置在同一个位置上,它们必然相等。但是,完全有可能将内容相同的多个字符串的拷贝放置在不同的位置上。 如果虚拟机始终将相同的字符串共享,就可以使用== 运算符检测是否相等。但实际上只有字符串常量是共享的,而+或者substring 等操作产生的结果并不是共享的。因此不要使用== 运算符测试字符串的相等性。

9 空串与Null串 

空串“” 是长度为0 的字符串 。空串是一个java对象 有自己的串长度(0)和内容(空) ,不过 String变量还可以存放一个特殊的值,名为null 。这表示目前没有任何对象与改变量关联 

检查一个字符串是否为null, if(str == null). 

检查一个字符串既不是null 又不是空  if(str!=null&& str.length()!=0)

10 疑问 怎么遍历字符串?

10.1

10.2

三 输入输出

1在程序的开头加上 import java.util.* 2 构造一个Scanner  对象,并与“标准输入流” System.in 关联 。使用nextLine 方法是因为在输入行中有可能包含空格。 读取整数用nextInt ,浮点型用 nextDouble

2 读取密码可以用Console 类实现 .只能用在标准输入、输出流未被重定向的原始控制台中使用,在 Eclipse 或者其他 IDE 的控制台是用不了的

3  格式化输出

在 printf 中, 可以使用多个参数, 例如:

System.out.printf("Hello, %s. Next year, you'll be SSd", name, age) ;

每一个以 % 字符开始的格式说明符都用相应的参数替换。 格式说明符尾部的转换符将指示被 格式化的数值类型:f 表示浮点数,s 表示字符串,d 表示十进制整数

四 流程控制

五 数组

int[] a =new int[100];

对象 

 时间 Date birthday =new Date();  System.out.println (new Date());

日期 LocalDate newYearsEve = LocalDate.of(1999,12,31);  System.out.println (LocalDate.now());

包作用域:

 访问修饰符 public 和private 。 标记为public 的部分可以被任意的类使用,标记为private的部分只能被定义它们的类使用。 如果没有指定public 或private 这个部分(类、方法或变量)可以被同一个包中的所有方法访问

你可能感兴趣的:(java 入门 三)