Second_week_mofangzhen
第二周 奇数阶魔方阵
一、上节回顾
1.数组的基本操作
数组:若干个相同类型变量的集合。
声明:数据类型 数组名称[]; (在栈内存分配空间,存储的是数组的引用地址、数组首元素在堆内存
中的地址)
初始化:为每一个数组元素分配内存空间(堆内存)
访问:通过下标,下标从0开始
属性length
数组的长度,一维数组其长度指的是包含元素个数;二维数组是包含的一维数组的个数。
2.面向过程程序设计
自顶向下、逐步细化。按照程序执行的流程(解决问题的过程)将程序分解为若干个相对独立简单的子
问题。
二、字符串的操作
通过String类。该类位于java.lang
字符串是常量,它们的值不能被创建后改变。支持可变字符串字符串缓冲区。因为字符串对象是不可改
变的,所以它们可以被共享。
1.字符串连接运算符(+)
将两个字符串合并为一个字符串,,将其他类型的数据转换为字符串,并连接形成新的字符串
int a[]; float b[]; int c[][]; int a[]=new int[3]; a[2]=6; 数组名.length int a[]=new int[5]; System.out.println(a.length);//输出5 String s="Hello"; String s1=new String("Hello");
2.方法
String类的方法
length:返回字符串的长度。包含的字符数。
charAt(int n):返回第n个字符,其中的参数n类似数组中的下标值,n值从0开始
toLowerCase():将字符串中的字母全部变为小写字母
toUpperCase():变为大写字母
subString(int beginIndex):从指定位置beginIndex开始到最后一个字符结束,形成新字符串
subString(int beginIndex,int endIndex):指定开始和结束位置,从开始到结束位置中的字符串截
取出来,形成新的字符串。
replace(char oldChar,char newChar):替换,将oldChar替换为newChar
StringBuffer类的方法
deleteCharAt(int index):删除指定位置的字符
insert(int offset,String subStr):在指定位置插入字符串
append(String strOjb):在字符串的末尾添加一个字符串
delete(int beginIndex,int endIndex):从开始到结束,删除字符
3.使用某些系统定义的好的功能时(自定义)
创建类的对象
通过“对象.方法名(参数)”调用相应的方法实现相应的功能。
三、本周练习
1.输入一句英文,统计其中某个字符出现的频率(次数)。
2.输入一句英文,对其进行加密。加密方法自定义。
截取到每一个字符。
3.打印输出蛇形方阵。
二维数组,
String s="Hello";
String s1="World";
String s3=s+s1;//s3的值是HelloWorld
int k=0;
String r=s.substring(k++,k);
if(r.equals("H")){
System.out.println("111");
}else{
System.out.println("2222"); }
import java.util.Scanner;
public class Demo3 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入几乘几魔方阵");
int n=sc.nextInt();
int k=1;
int a[][]=new int[n][n];
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
if(i%2==0){
a[i][j]=k++;
}else{
a[i][n-1-j]=k++;
}
}
}
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
System.out.print(a[i][j]+"\t");
}System.out.println();
}
}
}
4.随机生成一个迷宫
随机数的生成、保障生成的随机数必须是0 1,非0 1
5.输出任意奇数阶魔方阵(3、5、7、9)
第一个数填充在第一行中间列,然后下一个数向其右上角填充,如果超出行,则转到最后一行,如果超
出了列,则转到第一列,如果填充的数是该魔方阵的整倍(3阶,3 6),则向下填充。
System.out.println("请输入几乘几魔方阵");
int n=sc.nextInt();
int k=1;
int a[][]=new int[n][n];
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
if(i%2==0){ a[i][j]=k++;
}else{
a[i][n-1-j]=k++; }
}
}
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
System.out.print(a[i][j]+"\t");
}
System.out.println();
}
}
}
Second_week_mofangzhen的更多相关文章
随机推荐
- Python自动发射弹幕
Python自动发射弹幕,弹幕护体 - 环境: Python3+Windows- 开发工具: PyCharm 学习效果:1. 学会使用Python刷弹幕2. 配置INI文件信息3. 掌握网络请求知识4 ...
- es6语法糖
ES6为一些已有的功能提供了非破坏性更新,这类新语法能做的事情其实用ES5也可以做,只是会稍微复杂一些,称之为语法糖. 对象属性的简洁表示法 声明的对象中包含若干属性,其属性值由变量表示,且变量名和属 ...
- 深入解析ConcurrentHashMap:感受并发编程智慧
如果有一个整型变量count,多个线程并发让count自增1,你会怎么设计? 你知道如何让多个线程协作完成一件事件吗? 前言 很高兴遇见你~ ConcurrentHashMap是个老生常谈的集合类了, ...
- 原创:DynamicDataDisplay波形显示自定义格式
原创:DynamicDataDisplay 原版本在日期显示的格式上与我们的习惯不一样,特做如下修改: 自定义日期格式修改: //MainWindow.cs中 var ds = new Enumera ...
- 全国11省市出台区块链专项政策,Panda Global发现 "区块链+政务"被寄予厚望!
2020年已经过半,回顾2020年的上半年,不难发现其实区块链的变化非常大,今天Panda Global就给大家回顾下上半年全国关于区块链政策的发布情况.今年上半年,全国已有11个省市出台区块链专项政 ...
- js基本数据类型--null和undefined的区别
1. null类型 只有一个值null,逻辑上表示一个空对象的指针,如果要定义一个变量来保存对象,最好将该变量初始化为null,比如let a="",而不要let b这样,其实nu ...
- Docker(五):Docker安装Elasticsearch
查找ElasticSearch镜像 镜像仓库 https://hub.docker.com/ 下拉镜像 docker pull elasticsearch:7.7.0 查看镜像 docker imag ...
- 系统类 字符串String类
java编程语言中的字符串. 在java中,String类是不可变的,对String类的任何改变,都是返回一个新的String类对象. String 对象是 System.Char 对象的有序集合,用 ...
- SharePoint Online之通过JSOM发送邮件
我们在SharePoint 开发过程中,经常会用到发邮件的功能,例如向Manager提醒有需要待办任务等等场景. 图片来自网站,如侵权,速删 一般我们会采用Workflow或者Power Automa ...
- js下 Day20、综合案例
一.购物车 效果图: 功能思路分析: 1. 面向对象框架 2. 模拟数据 1.多个店铺数组套对象 2.每个店铺多个商品,数组套对象