Java复习之数字与字符串
2016-07-16 17:23
531 查看
一 装箱拆箱
1. 封装类
所有基本类型对应的类类型基本类型可以和类类型相互转换
package digit; public class TestNumber { public static void main(String[] args) { int i = 5; //把一个基本类型的变量,转换为Integer对象 Integer it = new Integer(i); //把一个Integer对象,转换为一个基本类型的int int i2 = it.intValue(); } }
2. Number类
package digit; public class TestNumber { public static void main(String[] args) { int i = 5; Integer it = new Integer(i); //Integer是Number的子类,所以打印true System.out.println(it instanceof Number); } }
3. 自动装箱、拆箱
不需要调用构造方法,通过=符号自动把基本类型转换为类类型就叫装箱。
不需要调用Integer的
intValue方法,通过
=就自动转换成int类型,就叫拆箱.
int i = 5; Integer it = i; //装箱 int i2 = it; //拆箱
4. int 的最大值、最小值
Integer.MAX_VALUE,Integer.MIN_VALUE
二 字符串转换
1. 数字转字符串
方法1: 使用String类的静态方法valueOf方法2: 先把基本类型装箱为对象,然后调用对象的toString
int i = 5; //方法1 String str = String.valueOf(i); //方法2 Integer it = i; String str2 = it.toString();
2. 字符串转数字
调用Integer的静态方法parseInt。
String str = "999"; int i= Integer.parseInt(str);
三 数学方法
java.lang.Math提供了一些常用的数学运算方法,并且都是以静态方法的形式存在###1. 四舍五入, 随机数,开方,次方,π,自然常数
float f1 = 5.4f; float f2 = 5.5f; //5.4四舍五入即5 System.out.println(Math.round(f1)); //5.5四舍五入即6 System.out.println(Math.round(f2)); //得到一个0-1之间的随机浮点数(取不到1) System.out.println(Math.random()); //得到一个0-10之间的随机整数 (取不到10) System.out.println((int)( Math.random()*10)); //开方 System.out.println(Math.sqrt(9)); //次方2的4次方 System.out.println(Math.pow(2,4)); //π System.out.println(Math.PI); //自然常数 System.out.println(Math.E);
四 格式化输出
%s 表示字符串 %d 表示数字 %n 表示换行 //平台无关
1. 换行符
换行符就是另起一行 --- '\n' 换行(newline) 回车符就是回到一行的开头 --- '\r' 回车(return) 在eclipse里敲一个回车,实际上是回车换行符 Java是跨平台的编程语言,同样的代码,可以在不同的平台使用,比如Windows,Linux,Mac 然而在不同的操作系统,换行符是不一样的 (1)在DOS和Windows中,每行结尾是 “\r\n”; (2)Linux系统里,每行结尾只有 “\n”; (3)Mac系统里,每行结尾是只有 "\r"。 为了使得同一个java程序的换行符在所有的操作系统中都有一样的表现,使用%n,就可以做到平台无关的换行
总长度,左对齐,补0,千位分隔符,小数点位数,本地化表达
int year = 2020; //总长度,左对齐,补0,千位分隔符,小数点位数,本地化表达 System.out.format("%d%n",year); System.out.format("%8d%n",year); System.out.format("%-8d%n",year); System.out.format("%08d%n",year); System.out.format("%,8d%n",year*10000); System.out.format("%.2f%n",Math.PI); System.out.format(Locale.US,"%,.2f%n",Math.PI*10000); System.out.format(Locale.UK,"%,.2f%n",Math.PI*10000);
五 字符
保存一个字符的时候使用charchar对应的封装类 character
常用方法
System.out.println(Character.isLetter('a'));//判断是否为字符 System.out.println(Character.isDigit('a')); //判断是否为数字 System.out.println(Character.isWhitespace(' ')); //是否是空白 System.out.println(Character.isUpperCase('a')); //是否是大写 System.out.println(Character.isLowerCase('a')); //是否是小写 System.out.println(Character.toUpperCase('a')); //转换为大写 System.out.println(Character.toLowerCase('A')); //转换为小写 String a = 'a'; //不能够直接把一个字符转换成字符串 String a2 = Character.toString('a'); //转换为字符串
常见转义字符
六 字符串
1. 性质
和C++ STL 中的 std::string在创建过程,相加(+)方面类似,不可继承(final),一旦定义,不可更改(immutable),可以为空。2. 常用方法
(并没有列出所有的重载函数)String str = "java是面向对象式语言"; //charAt(int index)获取指定位置的字符 char c1=str.charAt(0); //toCharArray()获取对应的字符数组 char[] cs=str.toCharArray(); //截取子字符串 String subStr1=str.substring(3,5); //split根据分隔符进行分隔,分割成String数组 String subStr2[]=str.split(","); //trim去掉首尾空格 String str2 =" "+str; String str3 =str2.trim(); //大小写 String str4="Green"; String str5=str4.toLowerCase(); String str6=str4.toUpperCase(); //indexOf 判断字符或者子字符串出现的位置,contains 是否包含子字符串 //replaceAll 替换所有的 ,replaceFirst 只替换第一个
3. 字符串比较
1)是否为同一个对象
该引用必须指向同一个对象。当一般说来,编译器每碰到一个字符串的字面值,就会创建一个新的对象。但是编译器发现已经存在现成的字面值时,那么就直接拿来使用,而不会进行重复创建。
2)内容是否相同
使用equals进行字符串内容的比较,必须大小写一致equalsIgnoreCase,忽略大小写判断内容是否一致
3)是否以子字符串开始或者结束
startsWith //以...开始 endsWith //以...结束
StringBuffer 可变长的字符串 和C++ 的std::string完全类似。
关键字
append delete insert reverse length capacity
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android之获取手机上的图片和视频缩略图thumbnails
- android string.xml文件中的整型和string型代替
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- c++11 + SDL2 + ffmpeg +OpenAL + java = Android播放器
- 插入排序
- 冒泡排序