Java基础知识之典型范例一


Java基础知识

之典型范例一


文 | 莫若吻     


1.类型转换示例

关于代码short s = 1;s = s + 1;和short s = 1;s+=1;有什么区别吗?为什么?

:1)short s = 1; s = s + 1; 编译失败。因为s在运算时发生自动类型转换为int型,加1后运算结果是int型,int型数据不能直接赋值给低级别的short类型。此处应作强制类型转换后赋值,但应注意强制类型转换后会发生精度丢失。

正确代码为:第一种改法:short s=1;s=(short)(s+1);

            第二种改法:short s=1;s=s+(short)1;

2)short s = 1; s+=1;编译成功。s结果为2. +=符号在赋值时,会自动完成强制类型转换操作。

2.变量位置互换示例

对两个整数变量的值进行互换。

提示:

第一种:使用第三方变量

第二种:不需要第三方变量,可参考异或运输符的特点。

代码如下:

第一种方法:

class  Operator
{
	public static void main(String[] args) 
	{
		int a=99;
		int b=47;
		int temp; //定义临时变量
		System.out.println("a="+a+" b="+b);
		temp=a; //赋值,开始互换位置
		a=b;
		b=temp;
		System.out.println("a="+a+" b="+b);
	}
}
第二种方法:

class  Operator
{
	public static void main(String[] args) 
	{
		int a=99;
		int b=47;
		System.out.println("a="+a+" b="+b); //原来的值
		//一个实数异或同一个数两次(或者偶数次)等于原来的本身数值。
		a=a^b;
		b=a^b;
		a=a^b;
		System.out.println("a="+a+" b="+b);//互换值后的结果
	}
}

3.选择结构示例

使用键盘录入完成:一年中有12个月,每3个月一个季度,请根据给定的月份,输出对应的季节

春:3,4,5

夏:6,7,8

秋:9,10,11

冬:12,1,2

代码如下:

import java.util.Scanner; //调用Scanner类,实现键盘录入
class  Operator
{
	public static void main(String[] args) 
	{
		Scanner input=new Scanner(System.in); //创建Scanner类对象
		System.out.println("请您输入一个月份:");
		//将用户在键盘录入的值赋值给一个整型变量,存储至month
		int month=input.nextInt();  
		String read=null; //定义一个字符串变量
		//根据switch特点,实现题目要求
		switch(month){
			case 3:
			case 4:
			case 5:
				read="春季";
				break;
			case 6:
			case 7:
			case 8:
				read="夏季";
				break;
			case 9:
			case 10:
			case 11:
				read="秋季";
				break;
			case 12:
			case 1:
			case 2:
				read="冬季";
				break;
			default:
				System.out.println("您所输入的月份有误!!!");
				break;/*此处的break可省略,但若default不在条件语句的结尾处,则不能省略。*/
		}
		if(month<=12 && month>0)
		System.out.println("您所输入的月份是"+month+"月,所对应的季节是:"+read);
	}
}

4.for循环示例——正三角形

用代码实现一个正三角形:

class ForTest1 
{
	public static void main(String[] args) 
	{
		/*用代码实现下面的图形
		     *
		    * *
		   * * *
		  * * * *
		 * * * * *
		*/
		
		for(int x=1;x<=5;x++)  //外循环控制行数
		{
			for(int y=x;y<=5;y++)  //内循环控制每一列,输出空白的倒三角形
			{
				System.out.print(" ");
			}
			for(int y=1;y<=x;y++)//内循环控制每一列,输出正三角形
			{
				System.out.print("* ");
			}
			System.out.println();
		}
	}
}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值