22.01.20总结

下载好了eclipse 学习一下java

文件 :

One.java

定义变量 和c/c++一致

多了一个byte基本类型 代替c/c++中的char

输出数据之间用+  连接

java中的char为无符号常量拥有较c/c++的char更大的表示范围

Java中:

char能表示汉字byte不能

在表示单个英文字符时两者可以互转

byte相加会默认转成整型所以byte=byte+byte是错的

录入

方法/或者说头文件更好??

import java.util.Scanner;

录入工具

Scanner a =new Scanner(System.in);

其中 a是 自己取名 后面的System.in是系统参数 不能自己改

读取一行字符

String name =a.nextLine();   //读取下一行字符串  回车结束

读取一个整数

int age =a.nextInt();    //读取输入的下一个整数

还有下面这些(都是next+数据类型):

nextDouble()  ……Byte   Float Long  Shot

还有直接next读取一行字符串

next()  		//空格   回车  tab

至于循环结构,在c/c++中的for while都是可以用的 但是其表达式为bool型表达式

就不能写while(1)之类的死循环 要用while(2!=1)代替

java提供了一种新的循环方法

目标数组:

String []names= {"Tom","marry","jacy"};

循环输出:

        k=0;
		for(String num:names)
		{
			if(k!=0)
				//不能用  if(k)  !!!!
				System.out.print("*");
			System.out.print(num);
			k=1;
		}

带标签的break   这样终于可以一次跳出所有循环了

语法格式:在要跳出的循环上面写上一个标签(字符串)后面加一个冒号

目标数组

int [] number= {10,20,30,40,50};

如下程序直接跳到结尾处

        int i=1;
		int b=1;
		leable:
			while(2!=1)
			{
				for(int num:number)
				{
					if(num==30)
					{
						System.out.println("程序已经退出\n");
						break leable;
					}
						
					System.out.print(num+" ");
				}
			}//结尾处

只输出10 20 

方法/自定义函数

在主函数

    public static void main(String []args)
{
    ……
}

外写一个方法就是自定义函数了

如下是最常用的求最大公因数的方法

    public static int gcd( int x, int y)
	{
		//之前写到主类里面了
		return y==0?x:gcd(y,x%y);
	}

在主函数中调用

    public static void main(String []args)
{
    int num1,num2;
	num1=a.nextInt();
	num2=a.nextInt();
	int sum=gcd(num1, num2);
	System.out.println("最大公因数  是:"+gcd(num1, num2));
}

调试代码

import java.util.Scanner;
//输入头文件
public class One {
	public static void main(String []args)
	{
	//byte相加会默认成整型
		char aa;
		System.out.println("123"+"abc\n");
		Scanner a =new Scanner(System.in);
		//前面名字可以自取   
		//后面是固定的
		//String name =a.nextLine();
		//int age =a.nextInt();
		//注意这里是nextInt!!
		//System.out.println(name+"   "+age+"\n");
		/*
		 * nextLine()读取下一行字符串  回车
		 * next()  		空格   回车  tab
		 * nextInt()     读取输入的下一个整数
		 * nextDouble()  ……Byte   Float Long  Shot
		 * 
		 * 
		 */
		int [] number= {10,20,30,40,50};
		//遍历数组java特别方法
		//字符串数组一样的
		String []names= {"Tom","marry","jacy"};
		/*
		 int k=0;
		 
		for(int num:number)
		{
			if(k!=0)
				//不能用  if(k)  !!!!
				//里面只能是返回boolean型的数值
				System.out.print("*");
			System.out.print(num);
			k=1;
		}
		System.out.print("\n");
		k=0;
		for(String num:names)
		{
			if(k!=0)
				//不能用  if(k)  !!!!
				System.out.print("*");
			System.out.print(num);
			k=1;
		}
		*/
		//带标签的break
		/*int i=1;
		int b=1;
		leable:
			while(2!=1)
			{
				for(int num:number)
				{
					if(num==30)
					{
						System.out.println("程序已经退出\n");
						break leable;
					}
						
					System.out.print(num+" ");
				}
			}
			*/
		int num1,num2;
		num1=a.nextInt();
		num2=a.nextInt();
		int sum=gcd(num1, num2);
		System.out.println("最大公因数  是:"+gcd(num1, num2));
		//调用方法
		

	}
	//自定义函数  or  方法
	//注  一个类有两个方法具有相同名字  但是有不同的参数列表
	//eg:一个double  一个int 编译器根据传入数据来调用 
	public static int gcd( int x, int y)
	{
		//之前写到主类里面了
		return y==0?x:gcd(y,x%y);
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值