「保姆级教学」入门级java程序——薪资转换器

往期「保姆级教学」目录

「保姆级教学」iOS下JDK环境配置


前言

随着第二天CSDN集训营任务的发布我开始了对java更进一步的学习,在昨天安装配置环境的基础上,今天将初步探索java的基础编写规则,并编写一个简单的程序来夯实所学知识。希望大家随我一起巩固所学并有所创新,在此引用湘王老师的一句话“只要付出心血,必定会有收获”


提示:以下是本篇文章正文内容,有需要源码或者解决问题的小伙伴欢迎评论区留言,我将及时提供帮助!

第二日任务

1.java基础语法

一个 Java 程序可以认为是一系列对象的集合(不是女朋友哪个对象噢😯),而这些对象通过调用彼此的方法来协同工作。下面简要介绍下类、对象、方法和实例变量的概念。
对象:对象是类的一个实例,有状态和行为。例如,下图中汽车为类(class),而具体的每辆车为该汽车类的对象(object)
类:类是一个模板,它描述一类对象的行为和状态。在这里插入图片描述

方法:方法就是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的。例如,汽车可以开车,可以停车等,开车和停车就是每个汽车类的方法
实例变量:每个对象都有独特的实例变量,对象的状态由这些实例变量的值决定。
编写 Java 程序时,应注意以下几点:
大小写敏感:Java 是大小写敏感的,这就意味着标识符 Hello 与 hello 是不同的。
类名:对于所有的类来说,类名的首字母应该大写。如果类名由若干单词组成,那么每个单词的首字母应该大写,例如 MyFirstJavaClass 。
方法名:所有的方法名都应该以小写字母开头。如果方法名含有若干单词,则后面的每个单词首字母大写。
源文件名:源文件名必须和类名相同。当保存文件的时候,你应该使用类名作为文件名保存(切记 Java 是大小写敏感的),文件名的后缀为 .java。(如果文件名和类名不相同则会导致编译错误)。
主方法入口:所有的 Java 程序由 public static void main(String[] args) 方法开始执行。
在这里插入图片描述

2.掌握java基本输入输出

Scanner是JDK中的一个“类”,可以使用该类创建一个对象,例如:Scanner ***= new Scanner(System.in),然后***通过Scanner 类的 next() 与 nextLine() 方法获取输入的字符串,读取用户在命令行输入的各种基本类型,这样就实现了java中的数据输入。
控制台的输出由 print( ) 和 println() 完成。这些方法都由类 PrintStream 定义,System.out 是该类对象的一个引用。System是类名,out是类System中的静态的类成员,可以直接被调用,println是打印换行;print打印不换行。

public class demo1 {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);//创建一个名为scan的scanner对象
        String str1 = scan.nextLine();//调用scanner类的nextline()方法获取输入的字符串并赋值给str1
        System.out.printf(str1);//在控制台输出str1

    }
}

3.掌握java基本数据类型和变量

变量就是申请内存来存储值。也就是说,当创建变量的时候,需要在内存中申请空间
内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据。
因此,通过定义不同类型的变量,可以在内存中储存整数、小数或者字符。
在这里插入图片描述

Java 的两大数据类型:
内置数据类型
引用数据类型

内置类型:
Java语言提供了八种基本类型,其中包括:六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。

数据类型默认值
byte0
short0
int0
long0L
float0.0f
double0.0d
char‘u0000’
String (or any object)null
booleanfalse

引用类型:
在Java中,引用类型的变量非常类似于C/C++的指针。引用类型指向一个对象,指向对象的变量是引用变量。这些变量在声明时被指定为一个特定的类型,比如 Employee、Puppy 等。变量一旦声明后,类型就不能被改变了。这个后面会详细学习,现在不需要理解。

4.掌握java运算符

计算机的最基本用途之一就是执行数学运算,作为一门计算机语言,Java也提供了一套丰富的运算符来操纵变量。我们可以把运算符分成以下几组:

算术运算符
符号描述
+加法 - 相加运算符两侧的值 A + B 等于 30
-减法 - 左操作数减去右操作数 A – B 等于 -10
*乘法 - 相乘操作符两侧的值 A * B等于200
/除法 - 左操作数除以右操作数 B / A等于2
取余 - 左操作数除以右操作数的余数 B%A等于0
++自增: 操作数的值增加1 B++ 或 ++B 等于 21
自减: 操作数的值减少1 B-- 或 --B 等于 19
关系运算符

表格中的实例整数变量A的值为10,变量B的值为20:

运算符描述
==检查如果两个操作数的值是否相等,如果相等则条件为真。 (A == B)为假。
!=检查如果两个操作数的值是否相等,如果值不相等则条件为真。 (A != B) 为真。
>检查左操作数的值是否大于右操作数的值,如果是那么条件为真。 (A> B)为假。
<检查左操作数的值是否小于右操作数的值,如果是那么条件为真。 (A <B)为真。
>=检查左操作数的值是否大于或等于右操作数的值,如果是那么条件为真。 (A> = B)为假。
<=检查左操作数的值是否小于或等于右操作数的值,如果是那么条件为真。 (A <= B)为真。
位运算符
操作符描述
如果相对应位都是1,则结果为1,否则为0 (A&B),得到12,即0000 1100
^如果相对应位值相同,则结果为0,否则为1 (A ^ B)得到49,即 0011 0001
按位取反运算符翻转操作数的每一位,即0变成1,1变成0。 (〜A)得到-61,即1100 0011
<<按位左移运算符。左操作数按位左移右操作数指定的位数。 A << 2得到240,即 1111 0000
>>按位右移运算符。左操作数按位右移右操作数指定的位数。 A >> 2得到15即 1111
>>>按位右移补零操作符。左操作数的值按右操作数指定的位数右移,移动得到的空位以零填充。 A>>>2得到15即0000 1111
逻辑运算符

&& 称为逻辑与运算符。当且仅当两个操作数都为真,条件才为真。 (A && B)为假。
| | 称为逻辑或操作符。如果任何两个操作数任何一个为真,条件为真。 (A | | B)为真。
! 称为逻辑非运算符。用来反转操作数的逻辑状态。如果条件为true,则逻辑非运算符将得到false。 !(A && B)为真。

5. 掌握格式化输出

在控制台输出时基于格式考虑需要进行相关数字的显示方式进行限定,比如为了对其设置整体显示宽度,比如小数点后留几位数?比如是否按照千位进行逗号隔开等,这里介绍两个可以实现的途径。

1.使用“System.out.format”

格式占位符:“%d”表示一个整数;“%f”表示一个浮点数。

double num 12345.6789System.out.format("%-,10.2f测试",num)

在“%”和“d”(或者”f“)之间可以制定对齐方式(减号是左对齐)、是否需要逗号(千分位分割符)、是否指定宽度(10表示整体占位宽度)、小数点后留几位(“.2”表示小数点后留两位)等设置

2.使用DecimalFormat类


import java.text.DecimalFormat;//第一步,导入包
public class demo1 {
    public static void main(String[] args) {
        DecimalFormat df  = new DecimalFormat("$000,000.00");//第二步创建对象,并设置好类
        double num =  12345.6;
        String str = df.format(num);//使用格式转换方法,获得格式化后字符串
        System.out.println(str);//$012,345.60
    }
}

6.业务目标:完成薪资转换工具

代码实现

1.思路导图

程序需求如下:
在这里插入图片描述
由需求图可基本构见下列思维导图:

将日薪和年薪转换为固定格式
输入月薪x
计算日薪y和年薪z
输出

2.详细代码

import java.text.DecimalFormat;
import java.util.Scanner;
//导入包
public class Demo {
    public static void main(String[] args) {
    float x,y,z;//定义要用到的变量为float类型
    String day,year;//定义输出的字符串
        System.out.println("***薪资转换工具v1.0***");
        Scanner input = new Scanner(System.in);
        System.out.printf("请输入月薪(人民币):");
        x = input.nextFloat();
        y = x/22;//计算日薪
        z = x*13;//计算年薪
        DecimalFormat df1 = new DecimalFormat("¥000,000.00");//定义输出格式
        DecimalFormat df2 = new DecimalFormat("¥000.00");
        year = df1.format(z);//将转换好的格式赋值
        day = df2.format(y);//
        System.out.println("您的日薪为:"+day);
        System.out.println("您的年薪为:"+year);
    }
}

总结

以上就是今天要学习的内容,本文仅仅简单介绍了java语言的使用,而java提供了大量能使我们快速便捷地编程的函数和方法。希望大家积极踊跃的自我学习。如果有问题或者交流可以在评论区留言,我将及时作出回应。收藏有帮助,点赞不迷路~谢谢大家!
在这里插入图片描述

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

勤劳的“马”农

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值