java循环截取字符串

li747578076 2013-08-30 02:46:04
我有一段 字符串

如:
String name ="一二三四五六七八九十啊好的法兰克福很多事地方很多事健康东方航空电视剧";

我想按照 先判断字符串是否大于10个字符, 如果大于10个字符 循环截取字符串,当不够10个字符的时候 就不截取了 怎么操作



一二三四五六七八九十
啊好的法兰克福很多事
地方很多事健康东方航
空电视剧
...全文
400 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
HUIQQ0927 2013-09-06
  • 打赏
  • 举报
回复

for(int i=1,j=1;i<=name.length();i++)System.out.print(i==j*10&&j++!=0?String.valueOf(name.charAt(i-1))+"\n":String.valueOf(name.charAt(i-1)));
一行代码~
HUIQQ0927 2013-09-06
  • 打赏
  • 举报
回复
String name = "一二三四五六七八九十啊好的法兰克福很多事地方很多事健康东方航空电视剧"; for(int i=1,j=1;i<=name.length();i++){ System.out.print(i==j*10&&j++!=0?String.valueOf(name.charAt(i-1))+"\n":String.valueOf(name.charAt(i-1))); }
HUIQQ0927 2013-09-06
  • 打赏
  • 举报
回复

public static void main(String[] args) {
    String name = "一二三四五六七八九十啊好的法兰克福很多事地方很多事健康东方航空电视剧";
    for(int i=1,j=1;i<=name.length();i++){
	String s = i==j*10&&j++!=0?String.valueOf(name.charAt(i-1))+"\n":String.valueOf(name.charAt(i-1));
	System.out.print(s);
    }
}
  • 打赏
  • 举报
回复

              String str="一二三四五六七八九十啊好的法兰克福很多事地方很多事健康东方航空电视剧";
		int count = str.length()/10;	//首先看每段十个,一共有多少段
		if (str.length()%10!=0) {
			count = str.length()/10+1;
		}
		int no = 0;
		//循环段数,每一段索引自加10
		for (int i = 1; i <= count; i++) {
			String s = "";
			if (i==count) {
				s = str.substring(no,str.length());
			}else{
				s = str.substring(no,no+10);
			}
			no += 10;
			System.out.println(s);
		}
礼拜一 2013-09-06
  • 打赏
  • 举报
回复
Collection<String> con=new ArrayList<String>(); String str="一二三四五六七八九十啊好的法兰克福很多事地方很多事健康东方航空电视剧"; int length=str.length(); if(length%10!=0){ length=length+1; } for (int i = 0; i < length; i++) { if(str.length()>10){ con.add(str.substring(0,10)); str=str.substring(10,str.length()); } } con.add(str); System.out.println(con); }
礼拜一 2013-09-06
  • 打赏
  • 举报
回复
String str="一二三四五六七八九十啊好的法兰克福很多事地方很多事健康东方航空电视剧"; int length=str.length(); if(length%10!=0){ length=length+1; } for (int i = 0; i < length; i++) { if(str.length()>10){ String aa=str.substring(0,10); str=str.substring(10,str.length()); System.out.println(aa); } } System.out.println(str);
bigdata-sb 2013-09-02
  • 打赏
  • 举报
回复

String str = "一二三四五六七八九十啊好的法兰克福很多事地方很多事健康东方航空电视剧";

		int point = 10;
		if (str != null && str.length() >= point) {
			for (int i = 0; i < str.length(); i += point) {
				String temp = null;

				// 这里表示已经是最后的一个字符的索引了
				if (i >= str.length() - 1) {
					temp = str.substring(i);
					// 这里表示i所后面的字符串长度已经不查过point了
				} else if (i + point >= str.length()) {
					temp = str.substring(i);
				} else {
					temp = str.substring(i, i + point);
				}
				System.out.println(temp);
			}
		} else {
			System.out.println("不能尽心操作");
		}


xiaozhou10 2013-09-01
  • 打赏
  • 举报
回复
最简单的:正则表达式匹配所有字符十个一匹配

Pattern p=Pattern.compile(".{10}");
Matcher m=p.matcher("一二三四五六七八九十啊好的法兰克福很多事地方很多事健康东方航空电视剧");
				while(m.find())
					System.out.println(m.group(0));
长笛党希望 2013-09-01
  • 打赏
  • 举报
回复
简简单单
String str = "一二三四五六七八九十啊好的法兰克福很多事地方很多事健康东方航空电视剧";
		char[] c = str.toCharArray();
		for (int i = 0; i < c.length; i ++) {
			System.out.print(c[i]);
			if ((i + 1) % 10 == 0) {
				System.out.println();
			}
		}
蔡斌冰 2013-08-30
  • 打赏
  • 举报
回复
咱数学太好,算不过来,看到这题就直接这样了。

public class CutTest {
	/**
	 *String name  ="一二三四五六七八九十啊好的法兰克福很多事地方很多事健康东方航空电视剧";
	 *我想按照 先判断字符串是否大于10个字符, 如果大于10个字符 循环截取字符串,当不够10个字符的时候 就不截取了 怎么操作
	 * @author Milo 2013-8-30
	 * @param args
	 */
	public static void main(String[] args) {
		String name = "一二三四五六七八九十啊好的法兰克福很多事地方很多事健康东方航空电视剧" ;
		char[] ch = name.toCharArray() ;
		int count = 1 ;
		for(char c : ch){
			if(count % 10 != 0){
				System.out.print(c);
			}
			else{
				System.out.print(c);
				System.out.println();
			}
			count++ ;
		}
	}
}
longxinzishu 2013-08-30
  • 打赏
  • 举报
回复
额、、、看错了 还以为是10字节、、、
longxinzishu 2013-08-30
  • 打赏
  • 举报
回复
String.getByte().length() 获得长度 再进行判断是否大于10就好了
末日哥 2013-08-30
  • 打赏
  • 举报
回复
上面写得太啰嗦了。。
	public static void main(String[] args) {
		String name = "一二三四五六七八九十啊好的法兰克福很多事地方很多事健康东方航空电视剧";
		int next = 0;
		for (int i = 1; i <= name.length() / 10; i++) {
			next = i * 10;
			String s = name.substring(next-10, next);
			System.out.println(s);
		}
		System.out.println(name.substring(next));
	}
末日哥 2013-08-30
  • 打赏
  • 举报
回复
	public static void main(String[] args) {
		String name = "一二三四五六七八九十啊好的法兰克福很多事地方很多事健康东方航空电视剧";
		int next = 0;
		for (int i = 1; i <= name.length() / 10; i++) {
			String s = null;
			s = name.substring((i - 1) * 10, i * 10);
			System.out.println(s);
			next = i * 10;
		}
		System.out.println(name.substring(next));
	}
li747578076 2013-08-30
  • 打赏
  • 举报
回复
引用 3 楼 soulx 的回复:
len = 10 cnt = name.len / len; remain = name.len % len; for(i : 1 To cnt){ s += name.subString((i-1)*10,10); } s+=name.subString(remain); print s
可以写详细点吗
soulx 2013-08-30
  • 打赏
  • 举报
回复
len = 10 cnt = name.len / len; remain = name.len % len; for(i : 1 To cnt){ s += name.subString((i-1)*10,10); } s+=name.subString(remain); print s
li747578076 2013-08-30
  • 打赏
  • 举报
回复
引用 1 楼 feier00 的回复:
name.length()/10
可以写详细点吗
跳蚤图 2013-08-30
  • 打赏
  • 举报
回复
name.length()/10

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧