0 0

"\t"打错了成'\t',结果求解释?5

本人半桶水,我刚才在做现实100质数的程序:
public class test1
{
	public static boolean isPrimeNumber(int n)
	{
		for(int i=2;i<=Math.sqrt(n);i++)
		{
			if(n%i==0)
			{
				return false;
			}
		}
		return true;
	}
	public static void main(String[] arges)
	{
		final int s=100;
		for(int i=2;i<=s;i++)
		{
			if(isPrimeNumber(i))
			{
				System.out.print(i+"\t");
			}
		}
	}
}

21行那里,第一次写的时候把"\t"写成'\t',能编译,结果出来是一大串数字,而且保留'\t'重新编译后再执行的话那串结果会不一样的。
我想知道'\t'这东西是啥,为什么出现这个结果?(是内存方面出错?不知道是不是)
还有就是我在网上搜java '\t' "\t"或者java '\t'或者java "\t",出来的都不是我想知道的,顺便问一下如果遇到这类问题自己怎么搜答案?求经验分享
2011年11月26日 20:17
  • 大小: 6.9 KB

3个答案 按时间排序 按投票排序

0 0

采纳的答案

public class test1  
{  
    public static boolean isPrimeNumber(int n)  
    {  
        for(int i=2;i<=Math.sqrt(n);i++)  
        {  
            if(n%i==0)  
            {  
                return false;  
            }  
        }  
        return true;  
    }  
    public static void main(String[] arges)  
    {  
        final int s=100;  
        for(int i=2;i<=s;i++)  
        {  
            if(isPrimeNumber(i))  
            {  
                System.out.print(i+9);  
            }  
        }  
    }  
}  

试试这段程序是不是和你的结果一致啊,如果是,那么你可以想象一下 '\t' 这个字符的整数值是9, 而9就是'\t'这个字符的ascii码,而这种转换就是自动转型。

2011年11月26日 21:32
0 0

引用
而且保留'\t'重新编译后再执行的话那串结果会不一样的。

刚试了下  每次输出都是一样的 没有出现不一样的情况

其实问题很简单的 '\t'在java里的的字符转成int 就是 9, 所以原来2 3 5。。。就变成了11 12 14.。。。。。

public class test
{
	public static void main(String[] arges)
	{
		System.out.println((int)'\t');
		System.out.println("test"+(char)9+"test");
	}
}

2011年11月26日 21:16
0 0

java中单引号引起来的单个字符是char类型的,双引号 表示字符串,为一个或多个字符
java中可以直接把char类型转化成int的,相当于是ASCII码的值,\t 对应的ASCII码的值是9, System.out.print(i+'\t');  是调用了方法
PrintStream类中的 public void println(int x), 相当于 质数的值加上9所以就出现你贴出来的那一串了,

引用
而且保留'\t'重新编译后再执行的话那串结果会不一样的
这是不可能的,除非你的值有改变了, \t对应的ASCII码是不会变的;
后来代码改为System.out.print(i+"\t"); 相当于是 String.valueOf(i) + 制表符,是字符串拼接,是调用了PrintStream类中的 public void println(String s);

这个问题,你可以看看调用print的那个重载方法,然后再去找下原因,就容易多了,也比较有方向了;

像这种问题,可以查找的关键字有,\t对应的ASCII码、java 单引号,双引号的区别;

2011年11月26日 21:13

相关推荐

    英语口语:打错电话怎么处理?

    在日常生活中,尤其是在英语环境中,打错电话是经常会遇到的情况之一。如何礼貌、恰当地处理这类情况,既能展现自己的英语口语水平,又能避免不必要的尴尬,是每个人都应该掌握的一项技能。以下是从给定文件中提取并...

    T梁架设安全技术交底.docx

    T梁纵移和横移时,需专人指挥,确保同步行走,移梁速度不宜过快,梁体正位并打支撑,确保稳定。架设完成后,设置专用通道,确保安全通行。在已架好的T梁上运梁前,要完成梁间连接板的焊接,做好梁端支撑,车轮行走...

    java中 new date() 打印出的时间与系统时间错了八小时的解决方法

    在Java编程中,`new Date()` 用于创建一个表示当前日期和时间的对象。然而,有时候开发者可能会遇到这样一个问题:使用 `new Date()` 输出的时间与系统的实际时间相差了八个小时。这种情况通常是由时区(TimeZone)...

    english英语365句

    (给我打个电话。)** - 使用场景:告诉别人如何联系自己。 - 示例对话:“If you need anything, just give me a call.” 28. **Have him return my call. (让他回我电话。)** - 使用场景:请求别人让某人回电。...

    英语学习疯狂英语365

    41. "Don't get me wrong." 解释自己可能被误解的情况。 42. "Don't give up." 鼓励对方坚持下去。 43. "Don't jump to conclusions." 提醒对方不要仓促下判断。 44. "Don't let me down." 请求对方不要让自己...

    机械工程测试技术模拟考试题

    一、是非题(对的打√ ,错的打×)(每题2分,共20分) 1.所有周期信号都是功率信号。( ) 2.电阻应变式传感器只用于测定结构的应力或应变。() 3.频响函数反映了系统响应的稳态过程。() 4.稳态响应法不能...

    精准打招呼吸粉营销宝5.66.32微信吸粉神器

    查看更多关于 精准打招呼吸粉营销宝 的文章 是一款非常火爆的微信吸粉神器,可以直接推送小程序卡片到信息流,多图文可以不占...自动多维度根据粉丝的行为静默打标签,实现定向推送,千人千面,粉丝收到的,正好就是T

    如何解决Keil5打红叉的问题

    很多人换到Keil5,可能会遇到上图这个问题,这是keil新增的同步查错功能。一般情况下大家的项目编译通过了,也可以仿真运行了,以至于这些红叉看起来多余,实在是别扭。如何解决掉这些红叉呢?最好的办法就是关掉这个...

    OptiWay T系列分流设备维护和故障处理

    根据提供的文件信息,我们可以将OptiWay T系列分流设备的维护和故障处理相关知识点总结如下: ### OptiWay T系列分流设备维护与故障处理 #### 一、设备维护 ##### (一)日维护项目与操作指导 **1. 机房环境** - ...

    365美国人最爱的口语1

    以下是部分核心知识点的详细解释: 1. **Absolutely**:表示同意或确认,相当于“当然”或“完全正确”。 2. **Absolutely impossible!**:强烈否定,意味着某事无法实现或非常不可能。 3. **All I have to do is...

    八年级英语下册Unit7测试题及答案2.doc

    2. be on the wrong/right line(打错/正确的电话) 示例:I'm sorry, but you're on the wrong line. 3. take turns(轮流做某事) 示例:We play the dialogue in turn. 4. be late(迟到) 示例:I'm going ...

    新东方英语四六级 俞灏明

    56. **Give me a call.** (给我打电话。):邀请对方联系。 57. **Give my best to your family.** (请向你的家人问好。):表达对对方家人的问候。 58. **Have him return my call.** (让他回电话给我。):转达信息。...

    QuickBooks Enterprise Solutions 2021为用户提供了一种解决方案,可以快速查找和修复错

    并更有效地发展您的业务 它允许您从您的PC 平板电脑或手机组织和管理您的业务 它允许用户轻松管理他们的库存项目和快速定位项目和完成库存相关的t 以上为机器翻译结果,长 整句建议使用。 2021年QuickBooks企业解决...

    C语言课程设计背单词系统.doc

    5. 背诵成绩的记录(本程序设计运行一次程序所背诵的所有单词,答对一个得10分,打错一个扣5分) 三、功能模块分解及说明 1. 树形结构模块 2. 模块功能概述 程序概述:设计录入词库的结构体,结构体中分别存放...

    初中英语语法专项状语从句练习.doc

    Lucy likes playing table tennis, _________ Lily doesn't." 使用"but",形成对比,虽然她们是双胞胎,但Lily不喜欢打乒乓球。 (4) "Mr. Green knows little German, _________ he can't understand the ...

    江苏省沛县新华中学高三英语总复习单选题汇编17情景交际

    而在打错电话的情况下,道歉并说"I hope I didn’t bother you"表示歉意,并减轻了对方可能的不便感。 【知识点六:日常对话中的表达】 在日常对话中,例如在谈论跑步距离时,回答"I have no idea"表示自己并未尝试...

    五年级英语试题——5B期末总复习二.pdf

    22. 打错电话:make a wrong call 23. 胖猴子:fat monkey 24. 我的弟弟:my younger brother **三、单词变化** 这部分考察词形变换,如动词的现在分词、反义词、比较级等: 1. stay(现在分词)staying 2. wrong...

    用Cython加速Python到“起飞”(推荐)

    事先声明,标题没有把“Python”错打成“Cython”,因为要讲的就是名为“Cython”的东西。 Cython是让Python脚本支持C语言扩展的编译器,Cython能够将Python+C混合编码的.pyx脚本转换为C代码,主要用于优化Python...

    外研版中考初中英语连词and,or,but的用法完整归纳.docx

    9. but在此处表示转折,"I phoned Sarah last night, but there was no answer." 意思是我昨晚给莎拉打了电话,但没人接。 10. so在这里表示结果,"People cut down too many trees, so the greenhouse effect ...

Global site tag (gtag.js) - Google Analytics