您的位置:首页 > 编程语言 > Java开发

java系统学习(十三) --------java中对数据的处理

2015-09-30 12:11 495 查看

如何将基本数据类型转换为对象

Java程序语言分为基本数据类型和对象数据类型。

为什么要转换

Java是一种面向对象语言,Java中的类把方法与成员变量组合在一起,构成了独众的处理单元。在Java中不能定义基本类型(primitive type)的对象,为了能将基本类型视为对象来处理,并能调用相关的方法。Java为每个基本类型都提供了包装类,这样便可以把这些基本类型转化为对象来处理。

这些包装类有:"Boolean" , "Byte" , "Short" , "Integer" , "Long" ,"Float"、"Double"和"Character"等。

虽然Java可以直接处理基本类型,但是在有些情况下,还需要将其作为对象来处理,这时就需要将其转化为包装类。所有的包装类( Wrapper Class )都有共同的方法。

如果处理随机性的数据

Random类的基础知识

在现实生活中,会遇到很多随机性的事物,例如中彩票、摇奖等,这些都可以通过程序计算其中奖的概率。在Java程序语言类库中,有一个专门操作这种随机性数据的类,它就是Random类。

通过实例熟悉Random类的常用方法

编制一个剪子、包袱、锤子的游戏程序,计算机的选择由随机发生器实现。
public class    file6{
public static void main(String[] args){
//主方法
try{
//创建一个随机类rnd
Random rnd=new Random();
//创建变量i和hand
iat i=0;
String[] hand={"剪子","锤子","包袱"};
//输出相应信息
System.out.println("开始游戏了");
System.out.print("剪子(0),锤子(1),包袱(2)中,选择哪一个呢?");
//获取输入值
int c=System.in.read();
System.out.println("<结果>");
//通过分支语句来输出不同的结果
switch(c){
case '0’:
System.out.println("玩家:"+hand[0]);
break;
case '1':
System.out.println("玩家:"+hand[1]);
break;
case '2’:
System.out.println("玩家:"+hand[2]);
break;
}
int b=rnd .nextInt(3); //获取一个随机数变量b
System.out.println("计算机:"+hand(b]);
if((c-49)>b){                                  //当大于b
System.out.println("玩家胜利!");
System.out.println("比分:1:0" );
}else if((c-49)<b){                            //当小于b
System.out.println(”计算机胜利!"):
System.out.println("比分0:1");
}else if((c-49)==b){                          //当等于b
System.out.println("平手!");
System.out.println("比分:0:0");
}
}catch(Exception e){
}
}
}


结果:
开始游戏了

剪子(0),锤子(1),包袱(2)中,选择哪一个呢? 0

<结果>

玩家:剪子

计算机:锤子

计算机胜利!

比分:0:1

再运行:

开始游戏了

剪子(0),锤子(1),包袱(2)中选择哪一个呢? 2

<结果>

玩家:包袱

计算机:剪子

玩家胜利!

比分、:1:0

如何对数据进行排列、整理

在很多应用程序中,需要从一堆数据中知道哪个数据是最大的,哪个数据是最小的。在学生管理系统的成绩模块中,就必须要对所有成绩进行一个排序和整理,所以对数据的排列和整理,是程序设计中一个不可缺少的环节。

实例分析



class student implements Comparable{ //实现比较功能的类
//创建成员变量
String name;  //关于学生的姓名
int age;      //关于学生的年龄
String sexy;  //关于学生的性别
String code;  //关于学生的学号
String school;//关于学生所在学校的名称
String grade; //关于学生所在年级
String major; //关干学生的专业
String address;//关于学生家庭住址
student x;//关于学生对象x
student y;//关干学生对象y
student(Striag name){ //带参构造函数
this .name=name;
}
//关于各种参数的设置器
public void set(int age,String sexy,String code,String school,
String grade,String major, String address){
this.age=age;
this.sexy=sexy;
this .school=school;
this.grade=grade;
this.major=major;
this.code = code;
this.address=address;
}
//关于各种参数的访问器
public String getname(){
return name;
}
public String getcode(){
return code;
}
public String getsexy(){
return sexy;
}
public int getage(){
return age;
}
public String getschool(){
return school;
}
public String getmajor(){
return major;
}
public String getgrade《){
return grade;
}
public String getaddress(){
return address;
}
public String toString(){
String information="学生姓名:"+name+" "+"学号:"+code+" "+"性别:"+sexy+" "+"年龄:"+age+" "+"所在学校:"+school+" "+"所学专业:"+major+" "+"所在年级:"+grade+" "+"家庭地址:"+address;
return information;
}
//通过实现compareTo这个方法,来实现排序
public int compareTo(Object o){
student st=(student)0;       //创建对象st
return(age-st.age);
}
}

public class file8{
public static void main(String[]args){  //主方法
//创建各种学生对象
student stl=new student("王鹏");
student st2=new student("王浩");
student st3=new student("孙鹏");
student st4=new student("孙文君");
student st5=new student("谭妮");
student st6=new student("赵志强");
student st7=new student("王凯");
student st8=new student("苏瑞");
student st9=new student("张伟");
student st10=new student("张杰");
//通过设置器赋予多个对象参数值
stl.set(20,"男","10000","重庆大学","大学三年级","计算机专业","重庆市沙坪坝区");
st2.set(22,"男","10001","重庆大学","大学三年级","计算机专业","重庆市沙坪坝区");
st3.set(21,"男","10002","重庆大学","大学三年级","计算机专业","重庆市沙坪坝区");
st4.set(19,"女","10003","重庆大学","大学三年级","计算机专业","重庆市沙坪坝区");
st5.set(18,"女","10004","重庆大学","大学三年级","计算机专业","重庆市沙坪坝区");
st6.set(24,"男","10005","重庆大学","大学三年级","计算机专业","重庆市沙坪坝区");
st7.set(22,"男","10006","重庆大学","大学三年级","计算机专业","重庆市沙坪坝区");
st8.set(29,"男","10007","重庆大学","大学三年级","计算机专业","重庆市沙坪坝区");
st9.set(25,"男","10008","重庆大学","大学三年级","计算机专业","重庆市沙坪坝区");
st10.set(28,"男","10009","重庆大学","大学三年级","计算机专业","重庆市沙坪坝区");
//创建学生数组对象a
student[]a=new student[]{st1, st2, st3, st4, st5,st6,st7,st8,st9,st10};
try{
Arrays.sort(a);   //实现排序功能
//通过循环将数组内容的输出
for(int i=0;i<a.length;i++){
System.out.println(a[i]);
}

}catch (Exception e){
System.out.println(”出错了”);
}
}
}


结果:

学生姓名:谭妮 学号:10004 性别女 年龄:18 所在学校:重庆大学 所学专业:计算机专

业 所在年级:大学三年级 家庭地址:重庆市沙坪坝区

学生姓名:孙文君 学号:10003 性别女 年龄:19 所在学校:重庆大学 所学专业:计算机专

业 所在年级:大学三年级 家庭地址:重庆市沙坪坝区

学生姓名:王鹏 学号:10000 性别女 年龄:20 所在学校:重庆大学 所学专业:计算机专

业 所在年级:大学三年级 家庭地址:重庆市沙坪坝区

学生姓名:孙鹏 学号:10002 性别女 年龄:21 所在学校:重庆大学 所学专业:计算机专

业 所在年级:大学三年级 家庭地址:重庆市沙坪坝区

学生姓名:王浩 学号:10001 性别女 年龄:22 所在学校:重庆大学 所学专业:计算机专

业 所在年级:大学三年级 家庭地址:重庆市沙坪坝区

学生姓名:王凯 学号:10006 性别女 年龄:22 所在学校:重庆大学 所学专业:计算机专

业 所在年级:大学三年级 家庭地址:重庆市沙坪坝区

学生姓名:赵志强 学号:10005 性别女 年龄:24 所在学校:重庆大学 所学专业:计算机专

业 所在年级:大学三年级 家庭地址:重庆市沙坪坝区

学生姓名:张伟 学号:10008 性别女 年龄:25 所在学校:重庆大学 所学专业:计算机专

业 所在年级:大学三年级 家庭地址:重庆市沙坪坝区

学生姓名:张杰 学号:10009 性别女 年龄:28 所在学校:重庆大学 所学专业:计算机专

业 所在年级:大学三年级 家庭地址:重庆市沙坪坝区

学生姓名:苏瑞 学号:10007 性别女 年龄:29 所在学校:重庆大学 所学专业:计算机专

业 所在年级:大学三年级 家庭地址:重庆市沙坪坝区
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: