Java随堂小记02

2023-10-13 07:20
文章标签 java 02 小记 随堂

本文主要是介绍Java随堂小记02,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Java随堂小记

  • 自增、自减运算符
  • 初识Math类
  • 逻辑运算符
  • 位运算符
  • 赋值运算符
  • 包机制
  • JavaDoc生成文档
  • Scanner
    • next()与nextLine()得区别
    • 案例

自增、自减运算符

又叫一元运算符

public class Demo1 {public static void main(String[] args) {int a = 1;int b = a++;//先赋值后自增int c = ++a;//先自增后赋值System.out.println(b);System.out.println(c);int d = 2;int e = 1;int f=d++ + ++e;System.out.println(f);}
}

运行结果:
在这里插入图片描述

初识Math类

自动补全返回值类型 Ctrl + Alt + V
在Java中,幂运算如:2^3,用一些工具类来操作

public class Demo1 {public static void main(String[] args) {double pow = Math.pow(2,3);System.out.println(pow);}
}

运行结果:
在这里插入图片描述

逻辑运算符

public class Demo1 {public static void main(String[] args) {boolean a = true;boolean b = false;System.out.println("a && b:"+(a&&b));System.out.println("a || b:"+(a||b));System.out.println("!(a && b):"+!(a&&b));//短路运算:若前面的为假,则不执行后面的操作int c = 4;boolean d = (c<3)&&(c++<5);//c<3为false,不执行&&后面的System.out.println(d);System.out.println(c);}}

运行结果:
在这里插入图片描述
在这里插入图片描述

位运算符

位运算
A = 0011 1100
B = 0000 1101

    A&B = 0000 1100     全1才为1A|B = 0011 1101     全0才为0A^B = 0011 0001     异或,相同为0,相异为1~B  = 1111 0010     取反,0变1,1变0

左移<< 右移>>(重要)
2* 8 = 16 2* 2 *2 *2
2<<3 = 16 常用在计算底层得一些运算
0000 0000

    0000 0010       2↑ 从这开始0000 0100       4↑ 移一位0000 1000       8↑ 再移一位0001 0000       16↑ 再移一位共移了三位,所以 2<<3 = 16*/System.out.println(2<<3);

运行结果:
在这里插入图片描述

赋值运算符

public class Demo1 {public static void main(String[] args) {int a = 10;int b = 20;a += b;//a = a + bSystem.out.println(a);//字符串连接符System.out.println(a+b);System.out.println(""+a+b);//String + ...,会转成字符串System.out.println(a+b+"");}
}

运行结果:
在这里插入图片描述

包机制

格式:

package pkg1.pkg2.pkg3...;

一般用公司域名倒置作为包名

package com.baidu.www;

若新建只有一级包
在这里插入图片描述
点击齿轮(显示选择菜单),将压缩空的中间包勾选去掉即可
在这里插入图片描述
在这里插入图片描述

导包

import pkg1.pkg2.(classname|*);

默认导入lang包
*:通配符 表示导入该包下所有的类

JavaDoc生成文档

在这里插入图片描述

参数信息
/** */

@author 作者名
@version 版本号
@ since 指明需要最早使用得jdk版本
@param 参数名
@return 返回值情况
@throws 异常抛出情况
加在哪,就是哪里得注释

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
打开index.html
在这里插入图片描述

Scanner

  1. 导包
import java.util.Scanner;
  1. 语法
Scanner scanner = new Scanner(System.in);

自动补全:Ctrl+alt+V
记得打了主函数才能用

package www.Dongyi.Scanner;import java.util.Scanner;public class Demo2 {public static void main(String[] args) {//接收键盘数据Scanner scanner = new Scanner(System.in);System.out.println("使用nextLine方式接收:");//判断是否还有输入if(scanner.hasNextLine()){//使用next方式接收String str = scanner.nextLine();System.out.println("用户输入内容:"+str);}//凡是属于IO流得类如果不关闭会一直占用资源,用完就关scanner.close();}
}

运行结果:
在这里插入图片描述

next()与nextLine()得区别

在这里插入图片描述
注意不要忘记

Scanner scanner = new Scanner(System.in);

scanner.close();

案例

案例1

package www.Dongyi.Scanner;import java.util.Scanner;public class Demo2 {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int i = 0;float f = 0.0f;System.out.println("请输入整数");if(scanner.hasNextInt()){i = scanner.nextInt();System.out.println("整数数据:"+i);}else{System.out.println("输入不是整数!");}System.out.println("请输入小数");if(scanner.hasNextFloat()){f = scanner.nextFloat();System.out.println("小数为:"+f);}else{System.out.println("输入不是小数!");}scanner.close();//释放内存,养成好习惯}
}

这里会有一个小问题
如果输入0.5
在这里插入图片描述
解决方法
重新new一个对象,在最后关闭两个流
在这里插入图片描述
在这里插入图片描述

案例2
根据用户输入的数字求平均数和总和
输入多个数字,并求其总和与平均数,每输入一个数字用回车确认,通过非数字来结束输出并输出结果

package www.Dongyi.Scanner;import java.util.Scanner;public class Demo2 {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);//和double sum = 0;//计算输入了多少个数字int m = 0;System.out.println("请输入数字,回车确认,当输入非数字,则程序结束");//通过循环判断是否还有输入,并在里面对每一次求和统计while (scanner.hasNextDouble()){double x = scanner.nextDouble();//新建一个x来接收m++;sum += x;System.out.println("你输入了第"+m+"个数据,当前结果为:"+sum);}System.out.println(m + "个数的和为" + sum);System.out.println(m + "个数的平均值为" + (sum/m));scanner.close();}
}

这篇关于Java随堂小记02的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/201654

相关文章

JVM 的类初始化机制

前言 当你在 Java 程序中new对象时,有没有考虑过 JVM 是如何把静态的字节码(byte code)转化为运行时对象的呢,这个问题看似简单,但清楚的同学相信也不会太多,这篇文章首先介绍 JVM 类初始化的机制,然后给出几个易出错的实例来分析,帮助大家更好理解这个知识点。 JVM 将字节码转化为运行时对象分为三个阶段,分别是:loading 、Linking、initialization

Spring Security 基于表达式的权限控制

前言 spring security 3.0已经可以使用spring el表达式来控制授权,允许在表达式中使用复杂的布尔逻辑来控制访问的权限。 常见的表达式 Spring Security可用表达式对象的基类是SecurityExpressionRoot。 表达式描述hasRole([role])用户拥有制定的角色时返回true (Spring security默认会带有ROLE_前缀),去

浅析Spring Security认证过程

类图 为了方便理解Spring Security认证流程,特意画了如下的类图,包含相关的核心认证类 概述 核心验证器 AuthenticationManager 该对象提供了认证方法的入口,接收一个Authentiaton对象作为参数; public interface AuthenticationManager {Authentication authenticate(Authenti

Spring Security--Architecture Overview

1 核心组件 这一节主要介绍一些在Spring Security中常见且核心的Java类,它们之间的依赖,构建起了整个框架。想要理解整个架构,最起码得对这些类眼熟。 1.1 SecurityContextHolder SecurityContextHolder用于存储安全上下文(security context)的信息。当前操作的用户是谁,该用户是否已经被认证,他拥有哪些角色权限…这些都被保

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

Java架构师知识体认识

源码分析 常用设计模式 Proxy代理模式Factory工厂模式Singleton单例模式Delegate委派模式Strategy策略模式Prototype原型模式Template模板模式 Spring5 beans 接口实例化代理Bean操作 Context Ioc容器设计原理及高级特性Aop设计原理Factorybean与Beanfactory Transaction 声明式事物

Java进阶13讲__第12讲_1/2

多线程、线程池 1.  线程概念 1.1  什么是线程 1.2  线程的好处 2.   创建线程的三种方式 注意事项 2.1  继承Thread类 2.1.1 认识  2.1.2  编码实现  package cn.hdc.oop10.Thread;import org.slf4j.Logger;import org.slf4j.LoggerFactory

JAVA智听未来一站式有声阅读平台听书系统小程序源码

智听未来,一站式有声阅读平台听书系统 🌟&nbsp;开篇:遇见未来,从“智听”开始 在这个快节奏的时代,你是否渴望在忙碌的间隙,找到一片属于自己的宁静角落?是否梦想着能随时随地,沉浸在知识的海洋,或是故事的奇幻世界里?今天,就让我带你一起探索“智听未来”——这一站式有声阅读平台听书系统,它正悄悄改变着我们的阅读方式,让未来触手可及! 📚&nbsp;第一站:海量资源,应有尽有 走进“智听

在cscode中通过maven创建java项目

在cscode中创建java项目 可以通过博客完成maven的导入 建立maven项目 使用快捷键 Ctrl + Shift + P 建立一个 Maven 项目 1 Ctrl + Shift + P 打开输入框2 输入 "> java create"3 选择 maven4 选择 No Archetype5 输入 域名6 输入项目名称7 建立一个文件目录存放项目,文件名一般为项目名8 确定