给定一个正整数,返回它在 Excel 表中相对应的列名称。(伪26进制)

 从表面上看就是构造一个26进制的转换方法,需要注意的点在于逢26需要对0进行处理。

  private String[] strEn = {"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"};

  public String convertToTitle(int n) {
	StringBuilder sb = new StringBuilder();
	int num = n;
	while(num > 0) {
	  int intSu = num % 26;
	  if(intSu == 0) {
		intSu = 26;
		num = num / 26 - 1;
	  }else {
		num = num / 26;
	  }
	  sb.insert(0, strEn[intSu - 1]);
	}
	return sb.toString();
    }

  

 

posted @ 2020-07-07 16:37  蝶花残梦  阅读(456)  评论(0编辑  收藏  举报
Live2D