Demo18_基本类型包装类
2018-08-21 18:08
113 查看
package test09; import java.util.Arrays; public class Demo18_基本类型包装类 { private static final String SPACE = " "; public static void main(String[] args) { /*场景 * 通过文本框获取用户输入的数字数据,可是得到的都是字符串 * 如果想要对字符串中的数字进行运算,必须将字符串转成数字 * Java中提供了相应的解决对象 * 基本数据类型对象包装类:Java中将基本数据类型值封装成了对象 * * 封装成对象有什么好处呢? * 可以提供更多的基本操作数值的功能 * * 基本数据类型 基本数据类型对象包装类 * byte Byte * short short * int Integer * long Long * float Float * double Double * boolean Boolean * char Character * */ //int 学习 Integer用法 System.out.println(Integer.MAX_VALUE); System.out.println(Integer.MIN_VALUE); // 十进制转换成二进制 System.out.println(Integer.toBinaryString(10));//将一个数转换进制之后是一个字符串类型(参照10-->16的转换) // 十进制转成16进制 System.out.println(Integer.toHexString(10)); // 十进制转成八进制 System.out.println(Integer.toOctalString(10)); /* 基本数据类型对象包装类特点 * 1.用于实现基本数据类型与字符串之间的转换 * */ System.out.println("-------字符串转成基本数值--------"); // 1.1字符串转成基本数值 只演示Integer 基本数据类型 parse+首字母大写的基本上数据类型(string) character不需要解析 System.out.println("123"+2); System.out.println(Integer.parseInt("123")+2);//将“123”转换成123 // 可以将其他进制转化成十进制 System.out.println(Integer.parseInt("110", 2));//2代表指定的进制,前面的字符串必须符合你指定的进制 System.out.println("-------基本数值转成字符串--------"); System.out.println(123+2); System.out.println(String.valueOf(123)+2); System.out.println(Integer.toString(123)+2); System.out.println("-------基本数值转成包装对象--------"); Integer i1 = new Integer(4); Integer i2 = new Integer("4"); Integer i3 = Integer.valueOf("4"); System.out.println(i1); System.out.println(i2); System.out.println(i3); System.out.println("-------包装对象转成基本数值--------"); int num = i1.intValue(); System.out.println("num="+num); System.out.println("-------自动装箱和拆箱--------"); // 在JDK1.5之后,有了一个包装类的新特性 简化书写 自动装箱 Integer i = 4 ;//自动装箱 Integer i3 = Integer.valueOf("4"); // i和4都是对象 i = i + 5;//将i对象装成基本数值 自动拆箱 运算完成之后 自动装箱 System.out.println("i="+i); System.out.println("-------自动装箱和拆箱细节--------"); Integer a = new Integer(4); Integer b = new Integer(4); System.out.println(a==b); System.out.println(a.equals(b)); Integer c =12; Integer d =12; // 在JDK1.5中自动装箱时,为了节省空间如果数值在byte(-128----+127)范围内,不会新创建空间而是使用原有的空间 System.out.println(c==d); System.out.println(c.equals(d)); System.out.println("-------面试题--------"); // 23 9 -4 18 100 7 从小到大排列,生成一个数值有序的字符串 /*思路 * 1.排序 需要数组,数组需要元素 * 2.元素在字符串中,需要创建string对象来获取字符串中的数字 * 3.将字符串中获取的数组存储到一个int数组中,因为要排序 * 4.将排完的数组变成字符串 * 2. * */ String nums ="23 9 -4 18 100 7 "; nums = sortNumberString(nums); System.out.println("nums = "+nums); } public static String sortNumberString(String numsString) { //获取字符串中的数字。怎么获取? 通过空格进行Indexof的索引,找到其位置,subString截取, String[] strs = numsString.split(SPACE);//得到字符串 字符串比较与int比较不同 其中space是创建一个常量 //字符串数组转成int数组 int[] nums = parseIntArray(strs); // 对数组排序 Arrays.sort(nums); // 将数组转成字符串 return toString(nums); } // 将数组转成字符串 private static String toString(int[] nums) { StringBuilder sb = new StringBuilder(); //遍历数组 for(int i=0 ; i < nums.length ; i++){ if(i!=nums.length -1 ){ sb.append(nums[i]+" ");} else{ sb.append(nums[i]); } } return sb.toString(); } //字符串数组转成int数组 private static int[] parseIntArray(String[] strs) { // TODO Auto-generated method stub // 定义int数组 int[] arr = new int[strs.length]; // 遍历数组 for (int i = 0; i < arr.length; i++) { arr[i] = Integer.parseInt(strs[i]); } return arr; } }阅读更多
相关文章推荐
- 18基本数据类型对象包装类
- Java基本类型与包装类
- 基本数据类型对象包装类
- Java--基本类型包装类
- 2017.7.19(代码块,包装类,基本类型与String互转)
- 黑马程序员_Java基础_泛型应用 和 基本数据类型对象包装类
- 3.6 java基础总结①包装类,基本数据类型,String相互间转换
- Java基本数据类型包装类转换小记
- Java 中基本类型和包装类之间的转换
- 基本数据类型包装类
- 黑马程序员——基础知识——基本数据类型包装类
- 黑马程序员——Java基础--String类与基本数据类型对象包装类
- Java各大基本类型包装类的字面量揭秘
- 第七篇 黑马程序员-多态与String类以及基本数据类型的包装类
- java包含哪些基本数据类型及其包装类
- 基本数据类型对象与包装类
- Java八大基本类型详解与包装类
- 黑马程序员__String_StringBuffer_基本数据类型对象包装类
- java-15-基本数据类型对象包装类
- Java生涯——Java基础---String类和基本数据类型包装类