`

Java使用字符模拟5段显示器(火柴棍)的数字

    博客分类:
  • JAVA
阅读更多

问题:

question

 

import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.Scanner;

public class MatchNumberGenerator {
	public static int[] matchNumberGenerator(int a){
		int result[] = null;
		switch(a){
		//"_"-->2 " "-->0 "|"-->1
		case 0:
			result = new int[]{0,2,0,1,0,1,1,0,1,1,0,1,1,2,1};
			//"' _ '| |'| |'| |'|_|".split(",");
			break;
		case 1:
			result = new int[]{0,0,0,0,0,1,0,0,1,0,0,1,0,0,1};
			//"'   '  |'  |'  |'  |".split(",");
			break;
		case 2:
			result = new int[]{0,2,0,0,0,1,0,2,1,1,0,0,1,2,0};
			//"' _ '  |' _|'|  '|_ ".split(",");
			break;
		case 3:
			result = new int[]{0,2,0,0,0,1,0,2,1,0,0,1,0,2,1};
			//"' _ '  |' _|'  |' _|".split(",");
			break;
		case 4:
			result = new int[]{0,0,0,1,0,1,1,2,1,0,0,1,0,0,1};
			//"'   '| |'|_|'  |'  |".split(",");
			break;
		case 5:
			result = new int[]{0,2,0,1,0,0,1,2,0,0,0,1,0,2,1};
			//"' _ '|  '|_ '  |' _|".split(",");
			break;
		case 6:
			result = new int[]{0,2,0,1,0,0,1,2,0,1,0,1,1,2,1};
			//"' _ '|  '|_ '| |'|_|".split(",");
			break;
		case 7:
			result = new int[]{0,2,0,0,0,1,0,0,1,0,0,1,0,0,1};
			//"' _ '  |'  |'  |'  |".split(",");
			break;
		case 8:
			result = new int[]{0,2,0,1,0,1,1,2,1,1,0,1,1,2,1};
			//"' _ '| |'|_|'| |'|_|".split(",");
			break;
		case 9:
			result = new int[]{0,2,0,1,0,1,1,2,1,0,0,1,0,2,1};
			//"' _ '| |'|_|'  |' _|".split(",");
			break;
		}
		return result;
	}

	public static void printNumber(int[] numberArray, int arrayIndex, int arrayIndexEnd){
		for(int i = arrayIndex; i < arrayIndexEnd;i++){
			//System.out.print(numberArray[i]);
			switch(numberArray[i]){
			//"_"-->2 " "-->0 "|"-->1
			case 0:
				System.out.print(" ");
				break;
			case 1:
				System.out.print("|");
				break;
			case 2:
				System.out.print("_");
				break;
			}
		}
		System.out.print(" ");
	}
	
	public static boolean isNumber(String args) {
		  
		  return args.matches("-?\\d+\\.?\\d*");
		    
		 }
	public static void main(String[] args) {
		System.out.println("Please enter the number:");
		Scanner sc = new Scanner(System.in);
		String[] inputString = sc.nextLine().split("");
		//System.out.println(inputString);
		List<int[]> inputIntList = new LinkedList<int[]>();
		for(String temp: inputString){
			if(isNumber(temp))
				inputIntList.add(matchNumberGenerator(Integer.parseInt(temp)));
		}
		//System.out.println(inputIntList);
		Iterator<int[]> iterator = null;
		for(int i = 0; i < 5; i++){
			iterator = inputIntList.iterator();
			while(iterator.hasNext()){
				printNumber(iterator.next(),i*3,(i+1)*3);
			}
			System.out.println();
		}

	}

}
 

输出

输出

 

  • 大小: 21.3 KB
  • 大小: 7.8 KB
分享到:
评论

相关推荐

    Java随机字符串生成器,可用于生成随机密码,密约等场景,支持字符范围配置(如只允许数字,只允许字母,只允许数字字母,特殊字符等混合配置)

    Java随机字符串生成器,可用于生成随机密码,加密算法密约(AES,RSA等)等场景,支持可选字符范围配置(如只允许数字,只允许字母,只允许数字字母,特殊字符等混合配置),即在选择的字符范围内去实现随机字符串...

    java 字符串a-z排序

    在Java编程语言中,对字符串中的字符进行a到z排序是一项常见的操作,特别是在处理文本数据或需要对字母顺序排列的场景。本知识点将详细讲解如何实现这个功能。 首先,我们需要理解字符串在Java中的本质。在Java中,...

    Java 字母数字字符串 混合排序(绝对超值管用)

    List&lt;String&gt; location=new ArrayList(); 一行代码轻松搞定混合排序问题 Collections.sort(location, new SortUtils(true));

    java验证字符串是否符合json格式

    5. 值可以是字符串、数字、布尔值、null、对象或数组。 6. 字符串也必须用双引号包围。 在Java中,我们可以利用现有的库如Jackson、Gson或org.json等来实现JSON字符串的验证。这里以`org.json`库为例,给出一个简单...

    matchstick_move_worldg8y_火柴棍小游戏_compositionf1r_

    Python中,可以使用数据结构如字符串、列表或自定义类来表示火柴棍和等式。通过迭代或递归算法来遍历所有可能的移动,并利用条件判断来验证解。此外,为了增加交互性,还可以设计一个图形用户界面(GUI),让用户...

    字符型液晶显示器的控制.pptx

    字符型液晶显示器是电子设备中常见的一种显示装置,尤其在嵌入式系统和小型设备中广泛应用。本主题主要探讨字符型液晶显示器的控制原理、功能特点以及与微控制器的接口设计。 首先,字符型液晶显示器通常分为数显...

    java编程统计字符串的字母,数字,空格,其他

    java编程统计一个字符串中的字母,数字,空格,其他,输入一个字符串,就会输出字符串中包含的字母,数字,空格,其他

    七段数码显示器的数字-python源码.zip

    标题 "七段数码显示器的数字-python源码.zip" 暗示了这是一个关于使用Python编程语言实现七段数码显示器数字显示的课程案例。七段数码显示器是一种常见的电子元件,常用于电子表、计算器等设备上,它通过七段不同的...

    用七段显示器显示数字0~F

    在电子工程领域,七段显示器是一种常见的用于显示数字和字母的设备,特别是在早期的电子设备和数字仪表中。七段显示器通常由七个独立的LED或LCD段组成,形状类似于大写的字母“L”,通过组合这些段可以显示0到9的...

    java正则表达式判断密码是否包含大小写、数字、特殊字符

    随机产生字符串,字符串中的字符只能由特殊字符(&@#$%*),大写字母(A-Z),小写字母(a-z)以及数字(0-9)组成,且每种字符至少出现一次。这样产生字符串的方式可以应用到如下场景,比如,我们有一个应用就是添加用户完毕...

    java 去掉重复字符 三个方法

    这个方法利用了Java 8的特性,将字符串转换为整数流(每个字符的ASCII值),然后使用`distinct()`过滤重复,再通过`mapToObj()`将每个整数转换回字符,并最终使用`toArray()`生成新的字符串。 总结来说,去除Java...

    【Arduino】开发入门【七】7段显示器实现+源代码

    7段显示器不仅可以简单地显示数字,还可以通过位操作和字符映射来显示字母和其他特殊字符。此外,结合Arduino的定时器和中断功能,可以实现动态显示,如倒计时、实时钟等功能。 总结,通过本文的介绍,你应该对如何...

    电子屏字符显示器 电子屏字符显示器

    电子屏字符显示器 电子屏字符显示器 电子屏字符显示器 电子屏字符显示器

    java 字符串转16进制Ascii

    这个过程涉及到字符到数字的转换,并且通常使用`Character`类和`Integer`类的方法来完成。让我们深入探讨如何实现这一过程。 首先,每个字符在ASCII码表中都有一个唯一的数值对应,Java中的`char`类型就是用来表示...

    java 数字字符串计算器

    传入数字字符串(可以带括号)并返回结果,采用List当数组,代码有注释。

    java替换字符串中的符号

    在Java中使用正则表达式进行字符串操作时,理解和运用Unicode属性表达式可以极大地扩展我们的能力,使我们能够更精确地匹配和替换特定类别的字符。通过上述示例,我们可以看到,使用`[\\pP]`这样的表达式,可以有效...

    crt显示器模拟实验报告

    计算机中的字符和图形以二进制数字的形式存储在内存中,而CRT显示器则需要接收模拟信号才能显示。为此,图形适配器将这些数字信息转化为视频模拟信号,然后发送到显示器。本次课程设计的目标是开发一个能够模拟这一...

    java将数字转换成大写字母

    1. 方便易用:使用 Java 实现数字金额到中文大写字符的转换可以方便地将数字金额转换成中文大写字符。 2. 高效快捷: Java 实现数字金额到中文大写字符的转换可以快速地将数字金额转换成中文大写字符。 3.灵活多样:...

    java 判断字符串是否是中文

    java 判断字符串是否是中文 共总结了6种方法。。。。

    Java 字符串转换成点阵字库显示

    在Java中,我们可以创建一个二维数组来模拟点阵字库,数组的大小根据需要显示的字符大小决定。然后,我们需要一个映射表,将字符编码(ASCII码)映射到对应的点阵字库数据。映射表可以通过预先定义或者从外部资源...

Global site tag (gtag.js) - Google Analytics