Hi_Amos
坚持每天都在进步!!
随笔 - 224,  文章 - 2,  评论 - 192,  阅读 - 94万

 

一般拼接一段字符串在编程中是很常见的事,下面简单做个总结:

什么是占位符?占位符就是先占住一个固定的位置,等着你再往里面添加内容的符号.

 

1.Java中处理方法:

复制代码
package com.amos;

import java.text.MessageFormat;

/**
 * Created by amosli on 14-7-24.
 */
public class Test {

    public static void main(String args[]) {

        //拼接一段string 常用的方法
        String name="amosli";
        //方法1:
        String result = "hello,"+name;
        System.out.println(result);//hello,amosli

        //方法2:
        result = "hello,".concat(name);
        System.out.println(result);//hello,amosli


        //方法3:
        result = String.format("%d%s", 200, "元");
        System.out.println(result);//200元

        //方法4:
        result = MessageFormat.format("hi,{0},I am {1}", "Jack", "Amosli");
        System.out.println(result);//hi,Jack,I am Amosli


    }

}
复制代码

 

注:

方法一应该是使用的最多的,直接使用+号连接符;

方法二使用String类的一个方法concat()方法进行连接,跟+号很类似;

方法三.四使用的是占位符,方法三中用的是String.format()方法,需要注意的是表示需要替换的内容一般字符串要用%s,数字一般用%d进行表示.

方法四中直接用{n},其中n为数字表示参数的顺序,这个和C#中的非常类似.

 

2.C#中的占位符

static void Main()  
         {                 
                   string c="hello,amosli";
                   string m=String.Format(“{0}”,c);   //字符串格式输出
                   Console.WriteLine(m);   //hello,amosli
         }                                

 

复制代码
下面给大家介绍几个常用的格式化标识符:
字母 含义
C或c Currency 货币格式
D或d Decimal 十进制格式(十进制整数,不要和.Net的Decimal数据类型混淆了)
E或e Exponent 指数格式
F或f Fixed point 固定精度格式
G或g General 常用格式
N或n 用逗号分割千位的数字,比如1234将会被变成1,234
P或p Percentage 百分符号格式
R或r Round-trip 圆整(只用于浮点数)保证一个数字被转化成字符串以后可以再被转回成同样的数字
X或x Hex 16进制格式
示例如下(见cs_6.cs)
static void Main()   
         {
                   int i=12345;
                   Console.WriteLine("{0:C}",i);   //货币
                   Console.WriteLine("{0:D}",i);   //十进制数
                   Console.WriteLine("{0:E}",i);    //科学技术法
                   Console.WriteLine("{0:F}",i);   // 浮点数表示法
                   Console.WriteLine("{0:G}",i);   //G或g General 常用格式
                   Console.WriteLine("{0:N}",i);   //N或n 用逗号分割千位的数字
         }
复制代码

 

注:如果您使用@符号.他会忽略所有的转义.也就是{1}什么的就是{1}而不是标识占位符了,这里需要注意.即"@{1}"这种类型将不被识别为占位符.



3.C中的占位符

复制代码
C语言中的格式占位符:
%a,%A 读入一个浮点值(仅C99有效)
%c 读入一个字符
%d 读入十进制整数
%i 读入十进制,八进制,十六进制整数
%o 读入八进制整数
%x,%X 读入十六进制整数
%s 读入一个字符串,遇空格、制表符或换行符结束。
%f,%F,%e,%E,%g,%G 用来输入实数,可以用小数形式或指数形式输入。
%p 读入一个指针
%u 读入一个无符号十进制整数
%n 至此已读入值的等价字符数
%[] 扫描字符集合
%% 读%符号

格式输入输出示例
scanf("%d,%d,%d",&a,&b,&c); // 从键盘输入三个整数,用逗号分隔 
scanf("%c", &s); //从键盘输入一个字符  
scanf("%f", &f); //从键盘输入一个浮点型数据  

printf("%d\n",a); //输出一个整数 
printf("%f\n",b); //输出一个浮点数 
printf("%s\n",c); //输出一个字符 
复制代码

 

基本可以看出来三者非常像,Java和C#基本还是抄C语言的.

 

参考:

1.http://baike.baidu.com/view/873819.htm?fr=aladdin

2.http://www.cnblogs.com/fumj/articles/2380290.html

posted on   Hi_Amos  阅读(2408)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示