当前位置: 首页 > news >正文

哪个网站可以做会计分录asp网站开发视频教程

哪个网站可以做会计分录,asp网站开发视频教程,东营新闻最新消息,伊春网络运营推广我偶然发现了用户“ mip”一个有趣的堆栈溢出问题 。 问题是#xff1a; 我正在寻找一种生成字母序列的方法#xff1a; A, B, C, ..., Z, AA, AB, AC, ..., ZZ.可以很快将其识别为Excel电子表格的标题#xff0c;正是这样#xff1a; 到目前为止#xff0c;没有答案使… 我偶然发现了用户“ mip”一个有趣的堆栈溢出问题 。 问题是 我正在寻找一种生成字母序列的方法 A, B, C, ..., Z, AA, AB, AC, ..., ZZ. 可以很快将其识别为Excel电子表格的标题正是这样 到目前为止没有答案使用任何Java 8函数式编程我认为这是一个挑战。 我们将使用jOOλ 因为Java 8 Stream API不能为该任务提供足够的功能 。 但首先让我们以功能性方式分解算法。 我们需要的是以下组件 字母的可再现表示 上限即我们要产生多少个字母。 请求的序列转到ZZ 这意味着上限为2 一种将笛卡尔积中的每个字母与先前生成的组合字母进行组合的方法 让我们看一些代码 1.生成字母 我们可以这样写字母 ListString alphabet Arrays.asList(A, B, ..., Z); 但这很la脚。 让我们使用jOOλ生成它 ListString alphabet Seq.rangeClosed(A, Z).map(Object::toString).toList(); 上面的代码生成A和Z之间的字符的“封闭”范围 对于上限为包含范围的范围使用Java-8流表示 将字符映射为字符串并将其收集到列表中。 到目前为止一切都很好。 现在 2.使用上限 请求的字符序列包括 A .. Z, AA, AB, .. ZZ 但是我们可以轻易地想象将这一要求扩展到产生以下甚至更多的需求。 A .. Z, AA, AB, .. ZZ, AAA, AAB, .. ZZZ 为此我们将再次使用rangeClosed() // 1 A .. Z, 2 AA .. ZZ, 3 AAA .. ZZZ Seq.rangeClosed(1, 2).flatMap(length - ...).forEach(System.out::println); 这里的想法是为[1 .. 2]范围内的每个单独长度生成一个新的流并将这些流平整为一个单个流。 flatMap()本质上与命令式编程中的嵌套循环相同。 3.将字母组合成笛卡尔积 这是最棘手的部分我们需要将每个字母与每个字母的length进行组合。 为此我们将使用以下流 Seq.rangeClosed(1, length - 1).foldLeft(Seq.seq(alphabet), (s, i) - s.crossJoin(Seq.seq(alphabet)).map(t - t.v1 t.v2))); 我们再次使用rangeClosed()来产生[1 .. length-1]范围内的值。 foldLeft()与reduce()相同除了foldLeft()可以在流中从“左向右”移动而无需折叠函数具有关联性。 ew。 换句话说更容易理解的词是 foldLeft()只是命令性循环。 循环的“种子”即循环的初始值是完整的字母 Seq.seq(alphabet) 。 现在对于[1 .. length-1]范围内的每个值我们产生一个笛卡尔积 crossJoin() 到到目前为止“折叠”的一个字母和一个新的字母之间并将每个组合连接成一个新的字符串 t.v1和t.v2 。 而已 结合一切 以下简单程序将A .. Z, AA .. ZZ, AAA .. ZZZ所有值打印到控制台 import java.util.List;import org.jooq.lambda.Seq;public class Test {public static void main(String[] args) {int max 3;ListString alphabet Seq.rangeClosed(A, Z).map(Object::toString).toList();Seq.rangeClosed(1, max).flatMap(length -Seq.rangeClosed(1, length - 1).foldLeft(Seq.seq(alphabet), (s, i) - s.crossJoin(Seq.seq(alphabet)).map(t - t.v1 t.v2))).forEach(System.out::println);} }免责声明 对于这种特殊情况这当然不是最佳算法。 一名不知名的用户在Stack Overflow上给出了最好的实现之一 import static java.lang.Math.*;private static String getString(int n) {char[] buf new char[(int) floor(log(25 * (n 1)) / log(26))];for (int i buf.length - 1; i 0; i--) {n--;buf[i] (char) (A n % 26);n / 26;}return new String(buf); } 不必说后者比以前的功能算法快得多。 翻译自: https://www.javacodegeeks.com/2015/09/how-to-use-java-8-functional-programming-to-generate-an-alphabetic-sequence-2.html
http://www.huolong8.cn/news/439365/

相关文章:

  • 江西建设职业技能教育咨询网站wordpress 中文版
  • 西宁网站建设加盟代理制作网站公司推荐
  • 东莞网站优化哪家好免费企业信息发布平台
  • 东莞网站建设方案维护wordpress 关键字插件
  • 厦门定制型网站建设网络建设与管理专业
  • 苏州做学校网站的唐山网站建设拓
  • 换ip对网站有影响吗网页制作软件属于什么软件类别
  • 常见网站攻击方式扁平化网站布局
  • 首都之窗门户网站首页子公司网站备案
  • 网站制作教程ppt儒枫网网站建设
  • 在国税网站怎么做实名深圳市公司网站建设企业
  • 网站建设 金疙瘩计划wordpress添加js代码
  • 传统企业如果建立网站网站建设包括哪些知识
  • 宁德企业网站建设深圳市光明区
  • 优秀企业网站设计微信营销推广
  • 学校网站规划方案网站建设的销售术语
  • 网站建设一般多少钱官网企业网站接入微信支付
  • 微网站如何做推广方案电子商务网站建设 试卷
  • 个人网站怎么做推广公司建立网站流程
  • 郑州优秀网站建设公司河北建设厅官方网站报名考试网
  • 装修公司营销型网站建设学习做网站教程
  • 大气网站建设网站建设进度以及具体内容
  • 网站服务器哪个好网络营销跟做网站有什么区别
  • 山东浩景建设有限公司网站建设厅安检局网站
  • 外贸网站定制凡科快图app
  • 东莞学习网站建设京东网站建设的目标
  • 建设电子商务网站论文网站域名过期不续费
  • 太原网站建设联系方式h5商城网站是什么意思
  • 电子商务网站的规划与建设论文北京市住房和城乡建设部网站首页
  • 网站策划书结尾宁波建网站公司哪家好