首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

Java基础教程(程序及语法)

Java基础教程(程序及语法)

Java基础教程(程序及语法)

/**************************************************

这是个最基本的JAVA程序,最基本的JAVA程序必须有一个类


**************************************************/
//最基本的JAVA程序必须有一个类,在这里是clas base01
class base01
{
//JAVA中,程序的入口也为main函数
//main()函数前的限制符顺序必须为public static void,参数必须为String类型的数组
//以下写法将不被通过
public void static main(String[] args)
{
System.out.println("Hello World!");
}
}
**********************************************************

java源文件的命名规则

在同一个JAVA文件中可以定义多个类,但是只有一个类能定义为public
而且如果一个类被定义为public,这个文件的文件名必须和该public
的名字相同。
对于本类,文件必须命名为base02

***********************************************************/
class A
{
int a;
};
class B
{
int b;
};
public class base02
{
public static void main(String[] args)
{
System.out.println("Hello World!");
}
}



Java基础教程(程序及语法3)

class code01
{
public static void main(String[] args)
{
//JAVA的数据类型。请注意大小写
//一个字节的整型
byte e=3;
System.out.println(e);
//两个字节的整型
short h=4;
System.out.println(h);

//四个字节的整型
int f=4;
System.out.println(f);
//八个字节的整型
long g=5;
System.out.println(g);
//4个字节的浮点数
float a=11.3f;
System.out.println(a);
//8个字节的浮点数(更加精确)
double b=12.3d;
System.out.println(b);
//两个字节的单个字符。注意定义字符的时候不能用双引号,只能用单引号
char c='s';
String ss="xiongyong";
System.out.println(c);
//bool变量,用于判断真假。注意:truefalse不能大写。
boolean d=true;
System.out.println(d);

//final关键字为常量,意思是不能再被修改。相当于C++中的const
final int x=1;
//以下这行将被报错,因为x被定义为final,不能被修改。
x=x+1;
}
}

Java基础教程(程序及语法4)

/****************************************************************************
自动数据类型转换------强制类型转换

不同的数据类型可以进行混合运算。在运算过程中,不同数据类型必须首先转换为相同
的数据类型后才能进行运算。各种数据的转换原则是从低级向高级转换。具体如下:

char->byte->short->int->long->float->double

JAVA允许把高级类型转换为低级类型,我们通过强制类型转换实现。语法同C++

****************************************************************************/
class code03
{
void f1()//自动类型转换
{
int nO=2;
float fO=2.25f;
//以下这行不能被正确编译,因为算出来的结果不可能是整数
//int iResult=nO*fO;
//正确
float fResult=nO*fO;

System.out.println("混合运算结果为:"+fResult);
}
void f2()//强制类型转换
{
int nO=2;
float fO=2.25f;
float iResult=(int)(5.5*fO);

System.out.println("强制类型转换结果为:"+iResult);
}
public static void main(String[] args)
{
code03 c3=new code03();
c3.f1();
c3.f2();
}
}


Java基础教程(程序及语法5)

/**************************************************************
+运算符和类型转换
+对于数字来说是求和运算。两个short类型数据相加,结果将被升级为int类型。
+对于字符串来说连接两个字符串的运算

**************************************************************/
class code04
{
void f_add_string()
{
String a="hello ";
String b="world";
//请观察输出结果,体会字符串+字符串的功能
System.out.println(" a+b= "+a+b);
}
void f_add_number()
{
short x=1,y=2,z;
int p;
//错误代码。两个short类型数据相加,结果将被升级为int类型。而z却还是short类型
z=x+y;
//正确代码
z=(short)(x+y);
System.out.println(" 1 + 2 = " + z);
p= x+y ;
System.out.println(" 1 + 2 = " + p);
}
public static void main(String[] args)
{
code04 c4=new code04();
c4.f_add_string();
c4.f_add_number();
}
}

Java基础教程(程序及语法6)

/********************************************************************
JAVA允许在程序中调整数组中元素的个数


*********************************************************************/
class code06
{

public static void main(String[] args)
{
int myArray[]=new int[6];
int i;
for (i=0;i<myArray.length ;i++ )
{
myArray=i;
System.out.println(myArray);
}
//重新定义数组,注意,myArry以前的内容被重置了
myArray=new int[10];
for (i=0; i<myArray.length;i++ )
{
//重新定义数组
//myArray=i*10;
System.out.println(myArray);
}
}
}


Java基础教程(程序及语法7)

/*************************************************************************
数组
这是一个常见的冒泡排序的程序,用于把几个数按大小进行排序

**************************************************************************/
class code05
{
public static void main(String[] args)
{
//定义一个包含n个数的数组

int nArray[]={11,-5,100,56,321};


//JAVA是纯面向对象的语言,对于任何一个数组元素,JAVA都把它看做一个数组类型的对象,
//length是这个类的一个成员变量,它的值等于该对象中数组元素的个数。
//所以我们能通过nArray.length获得这个数组nArray里面包含元素的个数。
//对于本题,它等于5

int size=nArray.length-1;


for (int j=0;j<size;j++)
{

for (int i=0;i<size ;i++ )
{
if (nArray>nArray[i+1])
{
int tmp=nArray;
nArray=nArray[i+1];
nArray[i+1]=tmp;
}
}

}


for (int i=0;i<nArray.length ;i++ )
{
System.out.println(nArray+" ");
}

}
}


Java基础教程(程序及语法8)

/*
* 显示1x之间的所有素数
*/
class code12
{
//判断一个数x是不是素数
public boolean is_sushu(int x)
{
for (int i=2;i<x ;i++ )
{
if (x%i==0)
{
return false;
}
}
return true;
}
//显示1x之间的所有素数
public void disp(int x)
{
for (int i=1;i<=x ;i++ )
{
if (is_sushu(i))
{
System.out.println(i);
}
}
}
//程序入口
public static void main(String[] args)
{
code12 c12=new code12();
c12.disp(1000);
}
}


Java基础教程(程序及语法9)

/*
* 使用简单数据类型做为参数时的函数传值方式
*
* 当参数为简单数据类型时,参数传值使用复制传值方式,也就是说作为参数传进函数的值只是传
* 进来值的一个副本
*
*/
class base03
{
public static void main(String[] args)
{
System.out.println("Hello World!");
int j=10;
//本例中calculate函数传递的是简单数据类型参数j,所以使用复制传递方式,函数中并
//没有改变原来j的内容
calculate(j);

System.out.println("======================================");
System.out.println("执行完calculate函数后j的值为:"+j);
}


static void calculate(int j)
{
for (int i=0;i<10 ;i++ )
{
j++;
}
System.out.println("calculate函数中j的值为:"+j);
}
}


Java基础教程(程序及语法10)

/*
* 使用复杂数据类型做为参数时的函数传值方式
*
* 当参数为复杂数据类型时,参数传值使用引用传值方式,也就是说作为参数传进函数的值只是传
* 进来值的一个别名,直接效果就是函数中对参数做的修改直接就影响到原始的值
*
*/
class base04
{
public static void main(String[] args)
{
String a="hello";

System.out.println("初始阶段数组a的值为:" + a);

calculate(a);

System.out.println("调用calculate函数后,数组a的值为:" + a);

System.out.println("由此可知,在本函数中,参数是作为复杂变量的别名传进函数的,证据就是在函数中确实改变了函数外部变量a的值");

}

static void calculate(String j)
{

j="world";

System.out.println("calculate函数中参数数组j的值为:"+j);
}
}


Java基础教程(程序及语法11)

/*
*
*/
class base09
{
A a = new A();
int m = 20;

public base09()
{

System.out.println("A.i = " + a.i);
System.out.println("m = " + m);

System.out.println("=============================");
change(a);
change(m);

System.out.println("A.i = " + a.i);
System.out.println("m = " + m);
}

public static void main(String[] args)
{
new base09();
}

void change(A aa)
{
aa.i +=100;
}

void change(int x)
{
x+=100;
System.out.println("函数内 x = " + x);
}

class A
{
int i = 10;
};
}

Java基础教程(程序及语法12)

/* 函数的返回值
*
* return语句的作用是把一个确定的值返回给调用它的语句,这个值可以是
* 简单变量,也可以是对象。如果返回值是对象,则返回的实际上是对象的
* 地址。这个情况和参数传递相同
*/
class base05
{
// x*x+2(y+1)+3的函数
static float mathF1(float x,float y)
{
float z=x*x+2*++y+3;
//我们可以这样写返回值
return z;
}
static float mathF2(float x,float y)
{
//我们也可以这样写返回值(直接返回一个运算表达式的结果)
return x*x+2*++y+3;
}
public static void main(String[] args)
{
//System.out.println(a);
//我们可以这样获得返回值
float z=mathF2(4f,5f);
System.out.println("运算结果="+z);

//我们也可以这样获得返回值
System.out.println("运算结果="+mathF1(4f,5f));
}
}


Java基础教程(程序及语法13)

/*
* 函数的嵌套
*
* 函数自己调用自己叫做嵌套
*/
class base06
{
static int i=0;
//这是一种不好的嵌套,在函数体中无条件的调用了自己。导致的结果就是无限的循环
static void cout_line()
{
System.out.println("=============================");
cout_line();
}
//一种安全的嵌套,有条件的调用自己,不会导致死循环
static void cout_line2()
{
System.out.println("=============================");
i++;
if (i<10)
{
cout_line2();
}
}
public static void main(String[] args)
{
//请注释掉这个函数,因为它将导致死循环,函数永远不结束
cout_line();
cout_line2();
}
}
返回列表