java基础语法——断点调试与数据加密(基础语法练习学习)

news2024/11/27 0:23:48

目录

Eclipse的断点调试

基础语法的练习

Eclipse的断点调试

   作用:查看程序执行流程和调试程序

   断点: 就是一个标记,就是我们经常用到的debug(检查程序错误,我们用到的是debug as)

        A–哪里加?—— 在实际的程序行号前加

        B–如何加?——双击前边的行号,就会有个小点,就是断点。

        C–怎么运行断点的程序?——右键Debug As 

        D–点哪里?——点击 step over(或者快捷键F6)

        E–看哪里?——右边有个Debug视图

        F–如何消除断点?——再双击那个断点,也可以Breakpoints(remove)

基础语法的练习

  1. 键盘录入月份,输出对应的季节
  2. 打印5位数中所有的回文数
  3. 不死神兔问题
  4. 求数组中满足要求的元素和
  5. 裁判评分
  6.  数组反转                                                                                                                                  
  7. 数组基本查找
  8. 数据加密

练习1:键盘录入月份,输出对应的季节

package com.demo;

import java.util.Scanner;

/*
 * 
 * 		3,4,5	春
 * 		6,7,8	夏
 * 		9,10,11	秋
 * 		12,1,2	冬
 * 
 * 分析:
 * 		A:键盘录入一个月份,用Scanner实现
 * 		B:判断该月份是几月,根据月份输出对应的季节
 * 			if
 * 			switch
 */
public class Test {
	public static void main(String[] args) {
		//键盘录入一个月份,用Scanner实现
		Scanner sc = new Scanner(System.in);
		
		//接收数据
		System.out.println("请输入月份(1——12):");
		int month = sc.nextInt();
		

		if(month>12 || month<1) {
			System.out.println("你输入的月份有误:");
		}else if((month == 1) || (month == 2) || (month == 12)) {
			System.out.println("冬");
		}else if((month == 3) || (month == 4) || (month == 5)) {
			System.out.println("春");
		}else if((month == 6) || (month == 7) || (month == 8)) {
			System.out.println("夏");
		}else if((month == 9) || (month == 10) || (month == 11)) {
			System.out.println("秋");
		}
	}
}

 练习2:打印5位数中所有的回文数

package com.demo;
/**
 * 需求:打印5位数中的所有回文数
 * 什么是回文数?个位与万相同,十位与万位相同
 * @author 无限嚣张(菜菜)
 *
 */
public class Test3 {
	public static void main(String[] args) {
		int i = 0;
		for(int x=10000; x<100000; x++) {
			int ge = x%10;
			int shi = x/10%10;
			int qian = x/10/10/10%10;
			int wan = x/10/10/10/10%10;
			
			if((ge == wan) && (shi == qian)) {
				System.out.println(x);
				i++;
			}
		}
		System.out.println(i);
	}
}

练习3: 不死神兔问题

package com.demo;

/*
 * 需求:
 * 		有一对兔子,从出生后第3个月起每个月都生一对兔子小兔子长到三个月后,每月又生一对兔子;
 * 		假如兔子都不死,问第二十个月的兔子对数多少?
 * 
 * 规律:
 * 		第一个月:1
 * 		第二个月:1
 * 		第三个月:2
 * 		第四个月:3
 * 		第五个月:5
 * 		...
 * 规律:从第三个月开始,每个月的兔子对数是前两个月兔子对数之和,第一个月和第二个月兔子对数都是2
 * 
 * 			...	
 */
public class Test4 {
	public static void main(String[] args) {
		//定义数组
		int[] arr = new int[20];
		
		//给数组元素赋值
		arr[0] = 1;
		arr[1] = 1;
		
		//找规律赋值ֵ
		for(int x=2; x<arr.length; x++) {
			arr[x] = arr[x-1] + arr[x-2];
		}
		
		//输出结果
		System.out.println("第二十个月兔子的对数是:"+arr[19]);
	}
}

练习4: 求数组中满足要求的元素和

package com.demo;

/*
 * 需求:
 * (1)定义一个int类型的一维数组:{171,72,19,16,118,51,210,7,18}
 * (2)求出该数组中满足要求的元素和
 * 		要求:求和的元素的个位和十位不能包含7,并且只能为偶数
 * 
 * 分析:
 * 		A:定义一个int类型的一维数组
 * 		B:定义一个求和变量
 * 		C:遍历数组,获取数组中的每一个元素
 * 		D:判断该元素是否满足条件,如果满足条件就累加
 * 			假设数据是x
 * 			个位不能是7,x%10 != 7
 * 			十位不能是7,x/10%10 != 7
 * 			必须是偶数x%2 == 0
 * 		E:输出求和结果
 */
public class Test5 {
	public static void main(String[] args) {
		//定义一个一维数组
		int[] arr = {171,72,19,16,118,51,210,7,18};
		
		//定义一个求和变量
		int sum = 0;
		
		//遍历数组
		for(int x=0; x<arr.length; x++) {
			//判断该元素是否满足条件,如果满足条件就累加
			if((arr[x]%10 != 7) && (arr[x]/10%10 != 7) && (arr[x]%2 == 0)) {
				sum += arr[x];
			}
		}
		
		//输出结果
		System.out.println("sum:"+sum);
	}
}

 练习5:裁判评分

package com.demo;

import java.util.Scanner;

/*
 * 需求:在编程竞赛中,有6个评委为参赛的选手打分。分数为:0-100整数分
 * 选手的最后得分:去掉一个最高分,去掉一个最低分后的4个评委平均值
 * 
 * 
 * 
 */
public class Test6 {
	public static void main(String[] args) {
		//定义数组
		int[] arr = new int[6];
		
		//创建新对象
		Scanner sc = new Scanner(System.in);
		
		//键盘录入评委的分数
		for(int x=0; x<arr.length; x++) {
			//键盘录入评委分数
			System.out.println("请输入第"+(x+1)+"个评委给出的分数(0-100)");
			int score = sc.nextInt();
			arr[x] = score;
		}
		
		//写方法获取最大值和最小值
		//调用方法
		int max = getMax(arr);
		int min = getMin(arr);
		
		//求和
		int sum = sum(arr);
		
		//选手的最后得分:去掉一个最高分,去掉一个最低分后的4个评委平均值
		int avg = (sum-max-min)/(arr.length-2);
		
		//输出结果
		System.out.println("最后得分"+avg);
	}
	
	/*
	 * 求和
	 */
	public static int sum(int[] arr) {
		//定义初值
		int sum = 0;
		
		for(int x=0; x<arr.length; x++) {
			sum += arr[x];
		}
		
		return sum;
	}
	
	/*
	 * 找最小值
	 */
	public static int getMin(int[] arr) {
		//定义一个最小值
		int min = arr[0];
		
		for(int x=1; x<arr.length; x++) {
			if(arr[x] < min) {
				min = arr[x];
			}
		}
		
		return min;
	}
	
	/*
	 * 找最大值
	 */
	public static int getMax(int[] arr) {
		//定义一个最大值
		int max = arr[0];
		
		for(int x=1; x<arr.length; x++) {
			if(arr[x] > max) {
				max = arr[x];
			}
		}
		
		return max;
	}
}

 练习6:数组反转

package com.demo;

import java.util.Scanner;


public class Test7 {
	public static void main(String[] args) {

		int[] arr = new int[5];
		Scanner sc = new Scanner(System.in);
		for(int x=0; x<arr.length; x++) {
			System.out.println("请输入"+(x+1)+"个元素值");
			int number = sc.nextInt();
			arr[x] = number;
		}
		
		//反转前
		printArray(arr);
		
		//定义方法将arr数组中内容反转
		reverse(arr);
		
		//定义方法将反转后的数组进行遍历
		printArray(arr);
	}
	
	//
	public static void printArray(int[] arr) {
		System.out.print("[");
		for(int x=0; x<arr.length; x++) {
			if(x==arr.length-1) {
				System.out.println(arr[x]+"]");
			}else {
				System.out.print(arr[x]+", ");
			}
		}
	}
	
	/*
	 * 数组反转
	 *
	 */
	public static void reverse(int[] arr) {
		for(int start=0,end=arr.length-1; start<=end; start++,end--) {
			int temp = arr[start];
			arr[start] = arr[end];
			arr[end] = temp;
		}
	}
	
}

 练习7:数组基本查找

/*
 *需求:数组元素查找(查找指定元素第一次在数组中出现的索引)
 */
public class Test8 {
	public static void main(String[] args) {
		//定义数组int[] arr = {5,7,3,2,5};
		int[] arr = {5,7,3,2,5};
		
		//键盘录入一个被查询的数据
		Scanner sc = new Scanner(System.in);
		
		System.out.println("请输入被查询的数据");
		int number = sc.nextInt();
		
		int index = getIndex(arr, number);
		System.out.println("index:"+index);
	}
	
	/*
	 * 查询索引
	 */
	public static int getIndex(int[] arr,int value) {
		//
		for(int x=0; x<arr.length; x++) {
			if(arr[x] == value) {
				return x;
			}
		}
		return -1;
	}
}

 练习8:数据加密

package com.demo;

import java.util.Scanner;

/*
 * 需求:键盘录入数据,要求数据是4位整数,现对数据进行加密,加密规则如下:
 * 每位数字都加5,然后除以10的余数代替该数字
 * 再将第一位和第四位交换。第二位和第三位交换
 * 请把加密后的数据输出中到控制台
 */
public class Test9 {
	public static void main(String[] args) {
		//创建对象
		Scanner sc = new Scanner(System.in);
		//接收数据
		System.out.println("请输入4位整数数据");
		int number = sc.nextInt();
		
		//创建数组
		int[] arr = new int[4];
		arr[0] = number/10/10/10%10;
		arr[1] = number/10/10%10;
		arr[2] = number/10%10;
		arr[3] = number%10;
		

		for(int x=0; x<arr.length; x++) {
			arr[x] += 5;
			arr[x] %= 10;
		}
		
		int temp = arr[0];
		arr[0] = arr[3];
		arr[3] = temp;
		
		temp = arr[1];
		arr[1] = arr[2];
		arr[2] = temp;
		
		//输出结果ܺ
		System.out.println("加密后的数据:");
		for(int x=0; x<arr.length; x++) {
			System.out.print(arr[x]);
		}
		System.out.println();
	}
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/180826.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Knowledge-based-BERT(二)

多种预训练任务解决NLP处理SMILES的多种弊端&#xff0c;代码&#xff1a;Knowledge-based-BERT&#xff0c;原文&#xff1a;Knowledge-based BERT: a method to extract molecular features like computational chemists&#xff0c;代码解析继续K_BERT_WCL_pretrain。模型框…

Java多线程 - 线程安全和线程同步解决线程安全问题

文章目录线程安全问题线程同步方式一: 同步代码块方式二: 同步方法方式三: Lock锁线程安全问题 线程安全问题指的是: 多个线程同时操作同一个共享资源的时候可能会出现业务安全问题&#xff0c;称为线程安全问题。 举例: 取钱模型演示 需求&#xff1a;小明和小红是一对夫妻&am…

建单向链表-C语言实现

任务描述 本关需要你建立一个带头结点的单向链表。 相关知识 什么是链表?链表和二叉树是C语言数据结构的基础和核心。 链表有多种形式,它可以是单链接的或者双链接的,可以是已排序的或未排序的,可以是循环的或非循环的。 本关让我们来学习单链表。 单链表 单向链表(单…

XC-16 SpringSecurity Oauth2 JWT

SpringSecurityOauth2用户认证需求分析用户认证与授权单点登录需求第三方认证需求用户认证技术方案单点登录技术方案Oauth2认证Oauth2认证流程2.2.2Oauth2在本项目中的应用SpringSecurity Oauth2认证解决方案SpringSecurityOauth2研目标搭建认证服务器导入基础工程创建数据库Oa…

一起自学SLAM算法:9.2 LSD-SLAM算法

连载文章&#xff0c;长期更新&#xff0c;欢迎关注&#xff1a; 下面将从原理分析、源码解读和安装与运行这3个方面展开讲解LSD-SLAM算法。 9.2.1 LSD-SLAM原理分析 前面已经说过&#xff0c;LSD-SLAM算法是直接法的典型代表。因此在下面的分析中&#xff0c;首先介绍一下直…

学习笔记:Java 并发编程④

若文章内容或图片失效&#xff0c;请留言反馈。 部分素材来自网络&#xff0c;若不小心影响到您的利益&#xff0c;请联系博主删除。 视频链接&#xff1a;https://www.bilibili.com/video/av81461839配套资料&#xff1a;https://pan.baidu.com/s/1lSDty6-hzCWTXFYuqThRPw&am…

CSS语法格式与三种引入方式

文章目录第一章——CSS简介1.1 CSS语法格式1.2 CSS 位置1.3 CSS引入方式1.3.1.行内样式表&#xff08;内联样式表&#xff09;1.3.2 外部样式表1.3.3 内部样式表第一章——CSS简介 1.1 CSS语法格式 CSS 规则由两个主要的部分构成&#xff1a;选择器以及一条或多条声明。 选择…

C语言全局变量和局部变量

局部变量定义在函数内部的变量称为局部变量&#xff08;Local Variable&#xff09;&#xff0c;它的作用域仅限于函数内部&#xff0c; 离开该函数后就是无效的&#xff0c;再使用就会报错。例如&#xff1a;intf1(int a){ int b,c;//a,b,c仅在函数f1()内有效 return abc; } i…

各种CV领域 Attention (原理+代码大全)

人类在处理信息时&#xff0c;天然会过滤掉不太关注的信息&#xff0c;着重于感兴趣信息&#xff0c;于是将这种处理信息的机制称为注意力机制。 注意力机制分类&#xff1a;软注意力机制&#xff08;全局注意&#xff09;、硬注意力机制&#xff08;局部注意&#xff09;、和…

打工人必知必会(三)——经济补偿金和赔偿金的那些事

目录 参考 一、经济补偿金&赔偿金-用人单位承担赔偿责任 1、月平均工资是税前还是税后工资&#xff1f; 3、经济补偿金是否要交个人所得税&#xff1f;如何交&#xff1f; 二、劳动者承担赔偿责任 三、劳动者需要特别注意 参考 《HR全程法律顾问&#xff1a;企业人力资…

Day12 XML配置AOP

1 前言前文我们已经介绍了AOP概念Day11 AOP介绍&#xff0c;并将其总结如下&#xff1a;2 AOP 标签和expression表达式学习<?xml version"1.0" encoding"UTF-8"?> <beans xmlns"http://www.springframework.org/schema/beans"xmlns:x…

3.4只读存储器ROM

文章目录一、引子二、介绍1.MROM2.PROM3.EPROM4.Flash Memory5.SSD三、运行过程四、回顾一、引子 这一小节&#xff0c;我们学习只读存储器ROM。 上一小节&#xff0c;学习了两种RAM芯片&#xff0c;分别是SRAM和DRAM。详情请戳&#xff1a;3.3Sram和Dram RAM芯片可以支持随…

Pygame创建界面

今天开始对Python的外置包pygame进行学习&#xff0c;pygame是Python的游戏包&#xff0c;使用该包可以设计一些简单的小游戏。 前言 利用Python外置包创建一个简单界面&#xff0c;首先需要下载Python外置包pygame 使用语句&#xff1a;pip install pygame Display模块 创建…

红黑树知识点回顾

Rudolf Bayer 于1978年发明红黑树&#xff0c;在当时被称为对称二叉 B 树(symmetric binary B-trees)。后来&#xff0c;在1978年被 Leo J. Guibas 和 Robert Sedgewick 修改为如今的红黑树。 红黑树具有良好的效率&#xff0c;它可在近似O(logN) 时间复杂度下完成插入、删除、…

实验五、任意N进制异步计数器设计

实验五 任意N进制异步计数器设计 实验目的 掌握任意N进制异步计数器设计的方法。 实验要求 一人一组&#xff0c;独立上机。在电脑上利用Multisim软件完成实验内容。 实验内容 说明任意N进制异步计数器的构成方法 设计过程 集成计数器一般都设有清零端和置数输入端&#xff…

3.7动态规划--图像压缩

3.6多边形游戏&#xff0c;多边形最优三角剖分类似&#xff0c;仅仅是最优子结构的性质不同&#xff0c;这个多边形游戏更加具有一般性。不想看了&#xff0c;跳过。 写在前面 明确数组含义&#xff1a; l: l[i]存放第i段长度, 表中各项均为8位长&#xff0c;限制了相同位数…

ElasticSearch - RestClient操作ES基本操作

目录 什么是RestClient hotel数据结构分析 初始化RestClient 创建索引库 删除索引库 判断索引库是否存在 小结 新增文档 查询文档 更新文档 删除文档 批量导入文档 小结 什么是RestClient ES官方提供了各种不同语言的客户端&#xff0c;用来操作ES这些客户端的本质…

Java基础语法——方法

目录 方法概述 方法定义及格式 方法重载 •方法重载概述 •方法重载特点 方法中基本数据类型和引用数据类型的传递 方法概述 ——假设有一个游戏程序&#xff0c;程序在运行过程中&#xff0c;要不断地发射炮弹(植物大战僵尸)。发射炮弹的动作需要编写100行的代码&…

五、在测试集上评估图像分类算法精度(Datawhale组队学习)

文章目录配置环境准备图像分类数据集和模型文件测试集图像分类预测结果表格A-测试集图像路径及标注表格B-测试集每张图像的图像分类预测结果&#xff0c;以及各类别置信度可视化测试集中被误判的图像测试集总体准确率评估指标常见评估指标混淆矩阵PR曲线绘制某一类别的PR曲线绘…

密码学的100个基本概念

密码学的100个基本概念一、密码学历史二、密码学基础三、分组密码四、序列密码五、哈希函数六、公钥密码七、数字签名八、密码协议九、密钥管理十、量子密码2022年主要完成了密码学专栏的编写&#xff0c;较为系统的介绍了从传统密码到现代密码&#xff0c;以及量子密码的相关概…