java 从零开始,学习笔记之基础入门<数据类型的转换>(五)
2013-10-30 12:40
1046 查看
数据类型的转换
各种整型数据类型的转换:
v 通常,我们需要在不同的数据类型之间进行转换。
v 简单类型除了boolean类型以外,其他的数据类型可以自动转换成其他的数据类型,只要遵循如下图所示的原则:
Java引用类型
全局变量和局部变量
v 局部变量在使用之前,必须先初始化。
v 全局变量如果没有初始化就拿来使用,系统将会自动给它一个默认的初值。
值传递
对象传递
对象和值传递的例子
各种整型数据类型的转换:
v 通常,我们需要在不同的数据类型之间进行转换。
v 简单类型除了boolean类型以外,其他的数据类型可以自动转换成其他的数据类型,只要遵循如下图所示的原则:
package com.ibm.third; publicclass NumberType { //boolean类型属于逻辑运算取值只能有true/false publicstaticvoid main(String[] args) { // 各种数据类型之间的相互转换 // 转换的分类:隐式转换和显示转换 // 数值类型取值范围:double>float>long>int>short>byte // 隐式转换:将取值范围小的类型的值转换成取值范围大的类型的值 int i2=24; doubled=i2; byte b4=100; shorts7=b4; // 显示转换:将取值范围大的类型的值转换成取值范围小的类型 // 如果大转小会造成数据丢失,需要进行强制类型转换。 double d5=12.5d; double d6=12.68d; double d7=-12.68; // 强制类型的转换格式:目标类型 目标属性=(目标类型)原类型; int i8=(int)d5;//将double类型强制转换成整型; int i9=(int)d6; int i10=(int)d7; System.out.println(i8); System.out.println(i9); System.out.println(i10); Object obj; String str="100";//将str的值加100 inti11 = Integer.parseInt(str);//将字符串转换成我们的int类型 doubled11 = Double.parseDouble(str); //int -->Integer byte -->Byte //char -->Character boolean -->Boolean //short -->short long -->Long //double -->Double float-->Float //将char型的值转换成float char c9='9'; float s9=c9; System.out.println(s9); //先将char-->int-->float // int f10=(int)c9; // float f11=f10; // System.out.println(f11); //char -->String -->int -->float String str1= String.valueOf(c9); System.out.println(str1); inti01 = Integer.parseInt(str1); float f01 =Float.parseFloat(str1); System.out.println(f01); //引用类型:除了基本数据类型以外的其他类型 String ste8; Object obj8; } } |
Java引用类型
package com.ibm.third; publicclass Student { private Stringname; private int age; private Stringclassroom; public Student(){ } public Student(String _name,int _age,String _classroom){ name = _name; age = _age; classroom = _classroom; } publicvoid setName(String _name){ name = _name; } public String getName(){ returnname; } publicvoid setAge(int _age){ age = _age; } publicint getAge(){ returnage; } publicvoid setClassroom(String _classroom){ classroom = _classroom; } public String getClassroom(){ returnclassroom; } } |
全局变量和局部变量
v 局部变量在使用之前,必须先初始化。
v 全局变量如果没有初始化就拿来使用,系统将会自动给它一个默认的初值。
package com.ibm.third; publicclass ChangAttr { //成员变量 //定义在类里面,方法的外面的变量 //定义一个成员变量在类中所有的方法中都可以使用(静态方法除外) //静态方法里不能直接使用非静态的公有属性 //定义一个成员变量不用对变量进行初始化,如果不给值默认的就是变量类型的初始值 //定义全局变量 inti=200; String name; publicstaticvoid main(String[] args) { //定义局部变量 String name1=null; System.out.println(name1); // System.out.println(name); } publicvoid show(){ System.out.println(name); } //局部变量 //定义在方法里面的变量 变量所处的位置就是在方法体里面 //局部变量在被调用之前必须进行初始化 //局部变量只能在当前的方法中使用,任意其它方法不能使用 } |
值传递
package com.ibm.third; publicclass ResultTrans { //值传递 publicstaticvoid main(String[] args) { String str = "java_lu"; System.out.println("----------"+str); ResultTrans rt = new ResultTrans(); rt.show(str); System.out.println("=========="+str); str=rt.show2(str); System.out.println("++++++++++++++++"+str); } publicvoid show(String str){ str="ibm"; System.out.println(str); } public String show2(String str){ str="ibm"; System.out.println(str); return str; } } |
对象传递
package com.ibm.third; publicclass ShowObject { publicstaticvoid main(String[] args) { Student st = null;//声明一个Student类对象的引用 Student st5 = null; //System.out.println(st); //st只是一个引用变量,没有具体的创建Student类的对象,所以st为null //如果从null的对象中取对象的属性值会报空值指针异常 //System.out.println(st.getName()); //创建对象 st = new Student(); System.out.println(st); System.out.println(st.getName()); Student st2=st; Student st3 = new Student(); st5=st3; System.out.println(st2); System.out.println(st3); System.out.println(st5); } } |
对象和值传递的例子
package com.ibm.third; publicclass Test { publicstaticvoid main(String[] args) { Student st = new Student(); st.setName("张三"); st.setAge(18); st.setClassroom("javalu"); System.out.println(st); Test tt = new Test(); tt.show(st); System.out.println(st.getName()); } publicvoid show(Student st){ //传递到show中的是st是在main中创建的st对象,所以是对象传递 //新创建的一个对象,虽然对象名和st一样,但是不是同一个对象 st= new Student("李斯",20,"大秦王朝"); System.out.println(st.getName()); } } |
相关文章推荐
- java 从零开始,学习笔记之基础入门<JDBC>(二十四)
- java 从零开始,学习笔记之基础入门<Hibernate_实战演练>(三十七)
- java 从零开始,学习笔记之基础入门<Date类_Calendar类>(十七)
- java 从零开始,学习笔记之基础入门<IO流>(十八)
- java 从零开始,学习笔记之基础入门<Struts2_实战演练(中)>(三十九)
- java 从零开始,学习笔记之基础入门<异常>(十五)
- java 从零开始,学习笔记之基础入门<集合>(十六)
- java 从零开始,学习笔记之基础入门<jsp>(二十六)
- java 从零开始,学习笔记之基础入门<正则表达式>(三十一)
- java 从零开始,学习笔记之基础入门<线程及实例分析>(十九)
- java 从零开始,学习笔记之基础入门<Oracle_函数_触发器_游标_存储过程_视图>(三十五)
- java 从零开始,学习笔记之基础入门<网络编程_带QQ模拟功能>(二十)
- java 从零开始,学习笔记之基础入门<Switch>(八)
- java 从零开始,学习笔记之基础入门<集合>(十六)
- java 从零开始,学习笔记之基础入门<三大框架整合>(四十二)
- java 从零开始,学习笔记之基础入门<对象_属性>(二)
- java 从零开始,学习笔记之基础入门<Struts2_Spring_整合>(四十一)
- java 从零开始,学习笔记之基础入门<Oracle_基础>(三十三)
- java 从零开始,学习笔记之基础入门<数组列表(ArrayList)>(九)
- java 从零开始,学习笔记之基础入门<重载_覆盖_继承>(十)