精华内容
下载资源
问答
  • java打印图形三角形

    2021-06-19 14:56:28
    事情是这样的 前段时间面试了阿里,大家也都清楚,如果你在简历上面写着你精通XX技术,那面试官就会跟你死磕到底。 我就是在自己的简历上写了精通MySQL,然后就开启了和阿里面试官的死磕之路,结果就是拿到了一份...

    事情是这样的

    前段时间面试了阿里,大家也都清楚,如果你在简历上面写着你精通XX技术,那面试官就会跟你死磕到底。

    我就是在自己的简历上写了精通MySQL,然后就开启了和阿里面试官的死磕之路,结果就是拿到了一份不错的高薪offer。

    我自己有一个习惯,每次面试后我都会进行复盘总结。一来也让我清楚自己对哪方面掌握得还不够;二来也大概清楚了面试的方向,让自己在面试前有侧重点地去复习准备。这样一套下来,面试成功并且拿到高薪offer的几率一定会高很多,大家可以去尝试一下。

    TCP 报文段结构

    一谈到 TCP 协议,大家最先想到的词就是「面向连接」和「可靠」。没错,TCP 协议的设计就是为了能够在客户端和服务器之间建立起一个可靠连接。

    在讲连接过程之前,我们先来看看 TCP 的报文段结构,通过这个结构,我们可以知道 TCP 能够提供什么信息:

    这里有几点是需要注意的:

    • TCP 协议需要一个四元组(源IP,源端口,目的IP,目的端口)来确定连接,这要和 UDP 协议区分开。多说一句,IP 地址位于 IP 报文段,TCP 报文段是不含 IP 地址信息的。
    • 基本 TCP 头部的长度是 20 字节,但是由于「选项」的长度是不确定的,所以需要「首部长度」字段明确给出头部长度。这里要注意的是,首部长度字段的单位是 32bit,也就是 4 字节,所以该字段的最小值是 5。
    • 标橙色的字段(确认序号,接收窗口大小,ECE,ACK)用于「回复」对方,举个例子,服务器收到对方的数据包后,不单独发一个数据包来回应,而是稍微等一下,把确认信息附在下一个发往客户端的数据帧上,也就是捎带技术。
    • 窗口大小是一个 16 位无符号数,也就是说窗口被限制在了 65535 字节,也就限制了 TCP 的吞吐量性能,这对一些高速以及高延迟的网络不太友好(可以想想为什么)。所幸 TCP 额外提供了窗口缩放(Window Scale)选项,允许对这个值进行缩放。

    下面是 8 个标志位的含义,有的协议比较旧,可能没有前两个标志位:

    标志位虽然很多,但是如果放到具体场景里来看的话,就很容易理解他们的作用了。

    TCP 三次握手

    三次握手就是为了在客户端和服务器间建立连接,这个过程并不复杂,但里面有很多细节需要注意。

    这张图就是握手的过程,可以看到客户端与服务器之间一共传递了三次消息,这三次握手其实就是两台机器之间互相确认状态,我们来一点一点看。

    第一次握手

    首先是客户端发起连接,第一个数据包将 SYN 置位(也就是 SYN = 1),表明这个数据包是 SYN 报文段(也被称为段 1)。这一次发送的目的是告诉服务器,自己的初始序列号是 client_isn,还有一个隐含的信息在图里没有表现出来,那就是告知服务端自己想连接的端口号。除了这些,客户端还会发送一些选项,不过这跟三次握手没多大关系,暂且按下不表。

    段 1 里最需要注意的就是这个client_isn ,也就是初始序列号。「RFC07931」指出:

    When new connections are created, an initial sequence number (ISN) generator is employed which selects a new 32 bit ISN. The generator is bound to a (possibly fictitious) 32 bit clock whose low order bit is incremented roughly every 4 microseconds. Thus, the ISN cycles approximately every 4.55 hours.

    翻译过来就是,初始序列号是一个 32 位的(虚拟)计数器,而且这个计数器每 4 微秒加 1,也就是说,ISN 的值每 4.55 小时循环一次。这个举措是为了防止序列号重叠

    但即使这样还是会有安全隐患——因为初始 ISN 仍然是可预测的,恶意程序可能会分析 ISN ,然后根据先前使用的 ISN 预测后续 TCP 连接的 ISN,然后进行攻击,一个著名的例子就是「The Mitnick attack2」 。这里摘一段原文:

    Mitnick sent SYN request to X-Terminal and received SYN/ACK response. Then he sent RESET response to keep the X-Terminal from being filled up. He repeated this for twenty times. He found there is a pattern between two successive TCP sequence numbers. It turned out that the numbers were not random at all. The latter number was greater than the previous one by 128000.

    所以为了让初始序列号更难预测,现代系统常常使用半随机的方法选择初始序列号,详细的方法就不在这里展开了。

    第二次握手

    当服务器接收到客户端的连接请求后,就会向客户端发送 ACK 表示自己收到了连接请求,而且,服务器还得把自己的初始序列号告诉客户端,这其实是两个步骤,但是发送一个数据包就可以完成,用的就是前面说的捎带技术。图里的 ACK = client_isn + 1 是指确认号字段的值,要注意和 ACK 标志位区分开。

    ACK 字段其实也有不少需要注意的点,不过这个跟滑动窗口一块讲比较直观,这里就先不提了。

    这里重点强调一下,当一个 SYN 报文段到达的时候,服务器会检查处于 SYN_RCVD 状态的连接数目是否超过了 tcp_max_syn_backlog 这个参数,如果超过了,服务器就会拒绝连接。当然,这个也会被黑客所利用,「SYN Flood」就是个很好的例子。因为服务器在回复 SYN-ACK 后,会等待客户端的 ACK ,如果一定时间内没有收到,认为是丢包了,就重发 SYN-ACK,重复几次后才会断开这个连接,linux 可能要一分钟才会断开,所以攻击者如果制造一大批 SYN 请求而不回复,服务器的 SYN 队列很快就被耗尽,这一段时间里,正常的连接也会得不到响应。

    服务器的这种状态称为静默(muted)。为了抵御 SYN Flood 攻击,服务器可以采用「SYN cookies」,这种思想是,当 SYN 到达时,并不直接为其分配内存,而是把这条连接的信息编码并保存在 SYN-ACK 报文段的序列号字段,如果客户端回复了,服务器再从 ACK 字段里解算出 SYN 报文的重要信息(有点黑魔法的感觉了),验证成功后才为该连接分配内存。这样,服务器不会响应攻击者的请求,正常连接则不会受到影响。

    但 SYN cookies 本身有一些限制,并不适合作为默认选项,有兴趣可以自行 Google。

    第三次握手

    这是建立 TCP 连接的最后一步,经过前两次握手,客户端(服务器)已经知道对方的滑动窗口大小初始序列号等信息了,这不就完了吗?为什么还要第三次握手?

    这是因为服务器虽然把数据包发出去了,但他还不知道客户端是否收到了这个包,所以服务器需要等待客户端返回一个 ACK,表明客户端收到了数据,至此,连接完成。

    连接建立后,进入传输数据的阶段,这里就涉及到很多很多技术,我会另写文章。

    四次挥手

    有了三次握手的基础,四次挥手就比较容易理解了:

    四次挥手的过程其实很简单,就是服务器和客户端互相发送 FIN 和 ACK 报文段,告知对方要断开连接。

    四次挥手里值得关注的一点就是 TIME_WAIT 状态,也就是说主动关闭连接的一方,即使收到了对方的 FIN 报文,也还要等待 2MSL 的时间才会彻底关闭这条连接。(这里面的 MSL 指的是最大段生成期,指的是报文段在网络中被允许存在的最长时间。)可为什么不直接关闭连接呢

    一个原因是,第四次挥手的 ACK 报文段不一定到达了服务器,为了不让服务器一直处于 LAST_ACK 状态(服务器会重发 FIN,直到收到 ACK),客户端还得等一会儿,看看是否需要重发。假如真的丢包了,服务器发送 FIN ,这个 FIN 报文到达客户端时不会超过 2MSL(一来一回最多 2MSL),这时候客户端这边的 TCP 还没关掉,还能重发 ACK。

    另一个原因是,经过 2MSL 之后,网络中与该连接相关的包都已经消失了,不会干扰新连接。我们来看一个例子:假如客户端向服务器建立了新的连接旧连接中某些延迟的数据坚持到了新连接建立完毕,而且序列号刚好还在滑动窗口内,服务器就误把它当成新连接的数据包接收,如下图所示:

    2MSL 机制就避免了这种情况。

    最后

    作为过来人,小编是整理了很多进阶架构视频资料、面试文档以及PDF的学习资料,针对上面一套系统大纲小编也有对应的相关进阶架构视频资料,如果**‘你’确定好自己未来的道路或者想学习提升自己技术栈、技术知识的小伙伴们可以点击这里来获取免费学习资料提升自己(全套面试文档、PDF、进阶架构视频)**


    、PDF、进阶架构视频)**

    [外链图片转存中…(img-zK3kaGNR-1624085785661)]
    [外链图片转存中…(img-ijiFmiBE-1624085785662)]

    展开全文
  • Spring全套教学资料 Spring是Java程序员的《葵花宝典》,其中提供的各种大招,能简化我们的开发,大大提升开发效率!目前99%的公司使用了Spring,大家可以去各大招聘网站看一下,Spring算是必备技能,所以一定要...

    SpringCloud面试题

    1. 什么是 Spring Cloud?
    2. 使用 Spring Cloud 有什么优势?
    3. 服务注册和发现是什么意思?Spring Cloud 如何实现?
    4. Spring Cloud 和dubbo区别?
    5. SpringBoot和SpringCloud的区别?
    6. 负载平衡的意义什么?
    7. 什么是 Hystrix?它如何实现容错?
    8. 什么是 Hystrix 断路器?我们需要它吗?
    9. 什么是 Netflix Feign?它的优点是什么?
    10. 什么是 Spring Cloud Bus?我们需要它吗?
    11. Spring Cloud断路器的作用
    12. 什么是SpringCloudConfig?
    13. Spring Cloud Gateway?

    SpringBoot面试题

    1. 什么是 Spring Boot?以及Spring Boot的优劣势?
    2. 为什么要用 Spring Boot?
    3. Spring Boot 的核心配置文件有哪几个?它们的区别是什么?
    4. Spring Boot 的配置文件有哪几种格式?它们有什么区别?
    5. Spring Boot 的核心注解是哪个?它主要由哪几个注解组成的?
    6. 开启 Spring Boot 特性有哪几种方式?
    7. Spring Boot 需要独立的容器运行吗?
    8. 运行 Spring Boot 有哪几种方式?
    9. Spring Boot 自动配置原理是什么?
    10. Spring Boot 的目录结构是怎样的?
    11. 你如何理解 Spring Boot 中的 Starters?
    12. 如何在 Spring Boot 启动的时候运行一些特定的代码?
    13. Spring Boot 有哪几种读取配置的方式?
    14. Spring Boot 支持哪些日志框架?推荐和默认的日志框架是哪个?
    15. SpringBoot 实现热部署有哪几种方式?
    16. 你如何理解 Spring Boot 配置加载顺序?
    17. Spring Boot 如何定义多套不同环境配置?
    18. Spring Boot 可以兼容老 Spring 项目吗,如何做?
    19. 保护 Spring Boot 应用有哪些方法?
    20. Spring Boot 2.X 有什么新特性?与 1.X 有什么区别?

    Dubbo面试题

    1. Dubbo与DubboX区别
    2. Dubbo中zookeeper做注册中心,如果注册中心集群都挂掉,发布者和订阅者之间还能通信么?
    3. Dubbo中有哪些角色?
    4. Dubbo在安全机制方面是如何解决的
    5. Dubbo执行流程?
    6. Dubbo支持的协议有哪些?
    7. Dubbo支持的注册中心有哪些?
    8. dubbo服务负载均衡策略?
    9. dubbo核心的配置有哪些?dubbo推荐用什么协议?
    10. dubbo连接注册中心和直连的区别
    11. dubbo通信协议dubbo协议为什么不能传大包
    12. dubbo通信协议dubbo协议为什么要消费者比提供者个数多
    13. dubbo通信协议dubbo协议为什么采用异步单一长连接
    14. dubbo通信协议dubbo协议适用范围和适用场景
    15. Spring Cloud与Dubbo的区别是什么?
    16. 什么是Dubbo?
    17. 简述Dubbo的均衡策略和集群容错模式
    18. 为什么要用 Dubbo?
    19. Dubbo 的整体架构设计有哪些分层?
    20. 默认使用的是什么通信框架,还有别的选择吗?
    21. 服务调用是阻塞的吗?
    22. 一般使用什么注册中心?还有别的选择吗?
    23. 默认使用什么序列化框架,你知道的还有哪些?
    24. 服务提供者能实现失效踢出是什么原理?
    25. 服务上线怎么不影响旧版本?
    26. 如何解决服务调用链过长的问题?
    27. 说说核心的配置有哪些?
    28. Dubbo 推荐用什么协议?
    29. 同一个服务多个注册的情况下可以直连某一个服务吗?
    30. 画一画服务注册与发现的流程图?
    31. Dubbo 集群容错有几种方案?
    32. Dubbo 服务降级,失败重试怎么做?
    33. Dubbo 使用过程中都遇到了些什么问题?
    34. Dubbo Monitor 实现原理?
    35. Dubbo 用到哪些设计模式?
    36. Dubbo 配置文件是如何加载到 Spring 中的?
    37. Dubbo SPI 和 Java SPI 区别?
    38. Dubbo 支持分布式事务吗?
    39. Dubbo 可以对结果进行缓存吗?
    40. 服务上线怎么兼容旧版本?
    41. Dubbo 必须依赖的包有哪些?
    42. Dubbo telnet 命令能做什么?
    43. Dubbo 如何优雅停机?
    44. Dubbo 和 Spring Cloud 的区别?
    45. 你还了解别的分布式框架吗?

    Spring全套教学资料

    Spring是Java程序员的《葵花宝典》,其中提供的各种大招,能简化我们的开发,大大提升开发效率!目前99%的公司使用了Spring,大家可以去各大招聘网站看一下,Spring算是必备技能,所以一定要掌握。

    资料领取方式:点击这里前往蓝色传送门

    目录:

    部分内容:

    Spring源码

    • 第一部分 Spring 概述
    • 第二部分 核心思想
    • 第三部分 手写实现 IoC 和 AOP(自定义Spring框架)
    • 第四部分 Spring IOC 高级应用
      基础特性
      高级特性
    • 第五部分 Spring IOC源码深度剖析
      设计优雅
      设计模式
      注意:原则、方法和技巧
    • 第六部分 Spring AOP 应用
      声明事务控制
    • 第七部分 Spring AOP源码深度剖析
      必要的笔记、必要的图、通俗易懂的语言化解知识难点

    脚手框架:SpringBoot技术

    它的目标是简化Spring应用和服务的创建、开发与部署,简化了配置文件,使用嵌入式web服务器,含有诸多开箱即用的微服务功能,可以和spring cloud联合部署。

    Spring Boot的核心思想是约定大于配置,应用只需要很少的配置即可,简化了应用开发模式。

    • SpringBoot入门
    • 配置文件
    • 日志
    • Web开发
    • Docker
    • SpringBoot与数据访问
    • 启动配置原理
    • 自定义starter

    微服务架构:Spring Cloud Alibaba

    同 Spring Cloud 一样,Spring Cloud Alibaba 也是一套微服务解决方案,包含开发分布式应用微服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。

    • 微服务架构介绍
    • Spring Cloud Alibaba介绍
    • 微服务环境搭建
    • 服务治理
    • 服务容错
    • 服务网关
    • 链路追踪
    • ZipKin集成及数据持久化
    • 消息驱动
    • 短信服务
    • Nacos Confifig—服务配置
    • Seata—分布式事务
    • Dubbo—rpc通信

    Spring MVC

    目录:

    部分内容:

    图片转存中…(img-v0lIemid-1625129438792)]

    [外链图片转存中…(img-3WlqM749-1625129438793)]

    部分内容:

    [外链图片转存中…(img-75b3P3PG-1625129438794)]

    [外链图片转存中…(img-wrBZUTzt-1625129438794)]

    展开全文
  • JAVA打印图形代码(等腰三角形,直角三角形) package day2; import java.util.; public class Test1{ public static void main(String[] args){ //打印等腰三角形 Scanner sc=new Scanner(System.in); System.out....

    JAVA打印图形代码(等腰三角形、菱形)

    等腰三角形
    package day2;
    import java.util.;
    public class Test1{
    public static void main(String[] args){
    //打印等腰三角形
    Scanner sc=new Scanner(System.in);
    System.out.println(“请打印一个整数作为三角行的行数”);
    int n=sc.nextInt();
    for(int i=1;i<=n;i++){
    for(int j=1;j<=n-i;j++){
    System.out.print(" ");
    }
    for(int k=1;k<=2
    i-1;k++){
    System.out.print("");
    }
    System.out.println();
    }
    }
    }
    菱形 1
    package day2;
    import java.util.Scanner;
    public class Test2{
    public static void main(String[] args){
    Scanner sr = new Scanner(System.in);
    System.out.println(“请输入矩阵长度:”);
    int s = sr.nextInt();//s=4 s=5
    int n=0;
    if(s%2==0){n

    展开全文
  • Java打印各种图形(等腰三角形、直角三角形、实心菱形、空心菱形) 1.打印等腰三角形 代码: // 打印出等腰三角形 @Test public void demo04() { for (int i = 1; i <= 5; i++) { // 控制行数 for (int j = 5...

    Java打印各种图形(等腰三角形、直角三角形、实心菱形、空心菱形)

    学习笔记,方便自己日后复习,也可供大家参考学习

    1.打印等腰三角形
    代码:

    // 打印出等腰三角形
    	@Test
    	public void demo04() {
    		for (int i = 1; i <= 5; i++) { // 控制行数
    			for (int j = 5 - i; j >= 0; j--) { // 控制每一行星星前面的空格数
    				System.out.print(" ");
    			}
    			for (int j = 0; j < 2 * i - 1; j++) {// 控制星星数
    				System.out.print("*");
    			}
    			System.out.println();//分行,开始下一行的输出
    		}
    	}
    

    运行截图:
    在这里插入图片描述
    2.打印直角三角形

    // 打印直角三角形
    	@Test
    	public void demo05() {
    		for (int i = 1; i <= 5; i++) {//控制行数
    			for (int j = 0; j < i; j++) {//控制每一行的星星数
    				System.out.print("*");
    			}
    			System.out.println();//开始下一行
    		}
    	}
    

    运行截图:
    在这里插入图片描述
    3.打印实心菱形
    分析:在这里菱形组成可以看为两个等腰三角形组成,可以拆解为打印一个正立三角形,一个倒立三角形。由于中间所画的这条对角线只能有一个,所以要么正立三角形星星的行数比倒立三角形星星的行数少一行,要么倒立三角形星星的行数比正立三角形星星的行数少一。
    在这里插入图片描述
    代码:

    	// 打印实心菱形
    	@Test
    	public void demo06() {
    		// 第一个等腰三角形(正着的)
    		for (int i = 0; i < 5; i++) {// 控制行数
    			for (int j = 0; j < 5 - i; j++) {//控制每一行星星前面的空格数
    				System.out.print(" ");
    			}
    			for (int j = 0; j < 2 * i - 1; j++) {//控制每一行星星数
    				System.out.print("*");
    			}
    			System.out.println();//分行,开始下一行的输出
    		}
    		// 第二个等腰三角形(倒着的)
    		for (int i = 3; i > 0; i--) {// 控制行数
    			for (int j = 4 - i; j >= 0; j--) {//控制每一行星星前面的空格数
    				System.out.print(" ");
    			}
    			for (int j = 0; j < 2 * i - 1; j++) {//控制每一行星星数
    				System.out.print("*");
    			}
    			System.out.println();//分行,开始下一行的输出
    		}
    	}
    

    运行截图:
    在这里插入图片描述
    4.打印空心菱形
    分析:这个思路和打印实心菱形大致一样,不过就是只显示四个边的星星,中间部分的让其不显示,可以先判断它是否等于初始值或者结束值,如果等于这两个值其中一个就让其输出为“*”,如果不是就输出为空格(" ").
    代码:

    // 打印空心菱形
    	@Test
    	public void demo07() {
    		// 第一个等腰三角形(正着的)
    		for (int i = 0; i < 5; i++) {// 控制行数
    			for (int j = 0; j < 5 - i; j++) {//控制每一行星星前面的空格数
    				System.out.print(" ");
    			}
    			for (int j = 0; j < 2 * i - 1; j++) {//控制每一行星星数
    				if (j == 0 || j == 2 * i - 2) {//如果为开头或者结尾则输出星星
    					System.out.print("*");
    				} else {						//其他(中间)输出空格,不让其显示
    					System.out.print(" ");
    				}
    			}
    			System.out.println();//换行
    		}
    		// 第二个等腰三角形(倒着的)
    		for (int i = 3; i > 0; i--) {// 控制行数
    			for (int j = 4 - i; j >= 0; j--) {//控制每一行星星前面的空格数
    				System.out.print(" ");
    			}
    			for (int j = 0; j < 2 * i - 1; j++) {//控制每一行星星数
    				if (j == 0 || j == 2 * i - 2) {//如果为开头或者结尾则输出星星
    					System.out.print("*");
    				} else {						//其他(中间)输出空格,不让其显示
    					System.out.print(" ");
    				}
    			}
    			System.out.println();//换行
    		}
    	}
    

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

    展开全文
  • 打印图形 代码: 小伙伴们可以尝试更多新的图形哦! public static void main(String[] args) { //打印正方形 /*for(int i=0 ;i<10;i++) { for(int j=0;j<10;j++) { System.out.print("* "); ...
  • 打印图形 画图题的解决方法:首先是要确定要画图形的各个参数如图形的边数、打印的字符;然后确定每一行要输出的字符数和空格数(字符和空格数的初始值);从输出的字符数和空格数推测出是递增还是递减;最后是判断...
  • Java打印直角三角形

    千次阅读 2020-05-17 23:03:15
    JAVA for循环打印直角三角形 打印正直角三角形 public static void main(String[] args) { //打印直角三角形1 for (int i = 0; i < 5; i++) { for (int j = 0; j < i + 1; j++) { System.out....
  • 使用Java打印三角形

    2021-08-18 17:09:20
    3、接下来我们会发现,如果我们想要完成 # 组成的三角形的绘制,其实只需要完成三个三角形的绘制即可,第一个三角形为空,第二第三个三角形由 # 组成,就能够完成整个图形的绘制 2)实践 1、完成第一个三角形的...
  • Java打印等腰三角形

    2014-11-10 16:13:25
    Java打印等腰三角形的源码及图形解说等
  • Java实现 打印三角形

    2019-08-05 22:10:29
    Java实现 打印三角形 直角三角形 import java.util.Scanner; public class CSDN { public static void main(String[] args) { Scanner sc = new Scanner(System.in); //监听键盘输入 int n = sc.nextInt(); ...
  • java打印各种三角形,这是二重循环的引用,有外层循环(控制行数)、内层循环(控制每行具体*的个数)。想要打印各种三角形,关键在于准确找出外层与内层的关系。假如外层循环用i表示,内层用j表示,也是说,要找...
  • java打印空心三角形

    2009-10-28 14:48:00
    JAVA语言编写的打印空心三角形的程序
  • 使用java打印所有图形

    2013-06-12 10:34:47
    使用java打印直角三角形,等腰三角形,菱形,实心正方形,空心正方形
  • JAVA打印三角形

    2019-10-11 18:53:37
    JAVA打印三角形 package JAVA_Project_01_03;//创建包 public class TextPrintPicture {//操作控制台输出图形的类 public static void printRightangle(int row){//输出直角图形 for (int i=1;i<row;i++){//...
  • java 打印图形 (* 各种图形)

    千次阅读 2021-01-10 15:41:33
    java 打印图形 (* 的规律是 1 3 5 7 9) public class Tuxing{ public static void main(String []args){ for(int i=1;i<=5;i++) { //控制行数 for (int j=1;j<=2*i-1;j++) { //控制一行输出几个 ...
  • 主要分享给大家运用java打印简单图形三角形,菱形,四边形,需要的朋友可以参考下
  • Java打印三角形

    2021-04-08 19:40:29
    java三角形输出 输出如图的形状
  • Java 循环结构 - for, while 及 do...while顺序结构的程序语句只能被执行一次。如果您想要同样的操作执行多次,,就需要使用循环结构。Java中有三种主要的循环结构:while循环do…while循环for循环在Java5中引入了一...
  • 一,java打印倒立直角三角形 /** * java打印倒立直角三角形 */ public class Test18 { public static void main(String[] args) { for (int i=1;i<10;i++){ for (int j=1;j<10-i;j++){ System.out....
  • 使用java打印直角三角形(朝右)

    千次阅读 2018-06-02 14:40:31
    声明:图形打印考验的是逻辑思维能力,与计算机语言熟练程度无关。逻辑思维能力弱的同鞋,做不了研发可以做开发。一、效果图代码:package com.test; /**  * 直角三角形  *   * @author PETER  *   */ ...
  • 使用java打印直角三角形(朝左)

    千次阅读 2018-06-02 14:35:59
    声明:图形打印考验的是逻辑思维能力,与计算机语言熟练程度无关。逻辑思维能力弱的同鞋,做不了研发可以做开发。一、效果图代码:package com.test; /** * 直角三角形 * @author PETER * */ public class ...
  • 打印各种三角形 打印水仙花数 打印九九乘法表 读入一个整数(行数),用*打印三角形、倒三角形、正等腰三角形、倒等腰三角形和菱形(for循环) import java.util.Scanner; public class TestGraphics { ...
  • Java打印上下对称三角形

    千次阅读 2019-08-21 17:18:49
    package test.test; public class Test { public static void main(String[] args) { int z=2; for (int i=0;i<7;i++){ if(i<=3) { for (int j = 0; j ...
  • 使用for循环嵌套实现控制台打印三角形。 用Scanner实现键盘录入三角形高度。 效果图???????????? 话不多说上代码 import java.util.Scanner; class ForForDemo{ public static void main(String[] args){ ...
  • 1、打印菱形 package csdn1; public class java菱形 { public static void main(String[] args) { print(8); // 输出 8 行的菱形 } public static void print(int size) { if (size % 2 == 0)...
  • 1.首先来实现一个比较简单的,在控制台打印一个长方形: /** * 测试打印长方形 * @author cui_yonghua */ public class PintPic { public static void main(String[] args) { for(int j = 0;...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,464
精华内容 1,385
关键字:

java打印图形三角形

java 订阅